.htaccessでPHPのファイルアップロードサイズの上限値を変更
2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…

TwitterやFacebookのように一番下までスクロールしたら自動的に追加データを読み込んで表示する機能を実装した時のソースをメモ。
サンプルはデータベース(Mysql)から10件づつデータを抽出。
<ul class="items">
<?php
require_once ('ini.php'); //DB接続ファイル
$sql = $db->query('SELECT * FROM tbl_sample ORDER BY id DESC LIMIT 10');
while($row = $sql->fetch(PDO::FETCH_ASSOC)){
echo('<li id="'.$row['id'].'">'.($row['name']).'</li>');
}
?>
</ul>
$(window).on('scroll', function(){
var doch = $(document).innerHeight(); //ページ全体の高さ
var winh = $(window).innerHeight(); //ウィンドウの高さ
var bottom = doch - winh; //ページ全体の高さ - ウィンドウの高さ = ページの最下部位置
if(bottom * 0.9 < $(window).scrollTop()){
var obj = $(this);
if (!obj.data('loading')) {
obj.data('loading', true);
$.get('loadmore.php', {lastid:$('ul.items li:last-of-type').attr('id')}, function(result){
$('ul.items').append(result);
obj.data('loading', false);
});
}
}
});
スクロール時のイベントの重複防止に、最初にイベントが発生した時点でのみobj.dataの「loading」をtrueに設定。
//追加読み込みの処理
require_once ('ini.php'); //DB接続ファイル
$lastid = $_GET['lastid'];
if(!empty($lastid)){
$sql = $db->prepare('SELECT * FROM tbl_sample WHERE id < :id ORDER BY id DESC LIMIT 10');
$sql->bindValue(':id', $lastid, PDO::PARAM_INT);
$sql->execute();
while($row = $sql->fetch(PDO::FETCH_ASSOC)){
echo('<li id="'.$row['id'].'">'.($row['name']).'</li>');
}
}

2022.02.5
PHPを使用して画像(動画・PDF等)をアップロードするフォームを作成した際に、ファイル…

2020.10.3
テキストエリア等で入力した文字の中にURLを含んでいた場合に、自動で認識してリンクタグを…

2024.03.30
外部ファイル(CSVファイル等)を読み込んでサイト内に表示する際に、保存時の文字コードが…

2020.12.5
メールフォームからメールを送信する際に、画像(ファイル)を添付できるようにしてほしいとの…

2023.12.2
ワードプレスの投稿のカテゴリー機能を、目的ごとに使い分けたいというご要望があった際に、カ…

2020.08.1
動画ファイルをCMS化して保存するときに、多くの場合はファイルパスをデータベース(MyS…

2022.09.24
パソコンやスマートフォンの戻るボタンを使って画面を戻す(ブラウザバックする)時があります…

2022.02.19
画像データ等をサーバーにアップロードする際、一点づつアップロードしても良いけれど、ファイ…

2020.08.15
フォームの入力値やURLのパラメータ等、文字列や数値を受け取る際に正規表現を利用してバリ…

2019.12.29
メールフォーム等での入力値チェック(バリデーション)。PHPの「preg_match」(…

ホームページ上にビフォーアフターの画像を掲載する場合に、同じ画角の画像を対比させて表示し…

以前、飲食店サイトを制作した際に、記念写真を掲載する目的でメインビューに使っていたスクリ…

時間を指定して表示を切り替える際にPHPを使用することが多かったのだけれど、利用している…