PHP+MySQL入門

ページングの処理1

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
データの件数が増えてくると、1ページには収まりきれなくなってしまいます。そこで、1ページごとの表示件数を制限する「ページング」の処理が必要になります。
講師:
07:37

字幕

続いてページングの処理について紹介していきます今画面に表示されているのは商品の情報を 表示するという一覧画面ですけれども今15件ほどのデータが登録されています15 件ほどでしたらこのように一覧で見ても それほど苦ではないんですけれどもとはいえ やはり件数的にはそれなりに多いといえますまたこれが 100 件 200 件となった時に一つのページにその情報がすべて表示されてしまうのは少し見やすいとは言えませんそこで ここではページングといわれる いわゆる次のページへ 前のページへといったようなリンクを準備する事でこの一ページの件数を制限するという方法を紹介していきたいと思いますそれでは プロジェクトを紹介していきましょうこちら今回は lesson 02-06というフォルダに index.phpinput.php そして libというフォルダの中にdbconnect.php というファイルがそれぞれありますindex.php は商品の一覧を表示するための画面そして input.php は新しい商品を登録するための画面となっていますdbconnect.php というファイルは データベースに接続するための手順が記述されたファイルでinput.php の先頭 それからindex.php の先頭で それぞれこのファイルが参照されていてデータベースへの接続を一元管理していますそれではデータベースの方も見ていきましょうここでは「 phpmysql 」というデータスペースの中に「 genre_master 」[ item_log ]「 item_table 」とそれぞれのテーブルがありますそして「 item_table 」の中にはあらかじめ登録しているいくつかの商品 15件ですね商品が登録されていますまた[ genre_master ]の方にも このようにgenre が指定されているという状態ですこのデータベースは素材ファイルの中にsql として納められていますこちらのデータは こちらの素材フォルダの中にphpmysql.sql というファイル収められていますのでこちら「データベース」のタブから新しいデータベースを作成し「照合順序」として「 utf8_general_ci 」を選んで その作ったデータベースに「インポート」というかたちでファイルをインポートしてご利用くださいそして「実行」ボタンをクリックする というかたちですではこちらで作業を始めていきましょうまず今回は こちらlesson 02-06 のindex.php こちらを使っていきますそしてこの「 SELECT 」のところを扱うわけなんですけれどもまずページングを行うための一番基本的な部分となるのは一ページの件数を制限するという部分になります例えば一ページ10件表示するとか一ページに5件表示するというようなかたちで その何件表示するかを選ばなければなりませんではここでは 例えば 一ページ5件という風に定めここで取得するデータの件数を5件に絞ってみたいと思いますsql で取得する件数を絞り込むのは「 SELECT 」の一番最後に「 LIMIT 」というオプションを付けますそしてここに「 5 」と指定する事で一ページの件数を制限する事ができますではこちらで動きを確認してきましょうMAMP が起動して ウェブサーバーがそれぞれ起動している事を確認したらここでは lesson 02-06 というurl にアクセスをしますすると このように一ページの件数は5 件に絞り込まれている事が分かりますこれが一ページ目を表示した時の画面のイメージになりますではこれで 例えば 今はまだありませんが次のページへといったようなリンクをクリックして二ページ目にアクセスした時は一体どのような表示になるべきでしょうかそれは「 6 」「 7 」「 8 」「 9 」「 10 」という5件が表示されなければなりませんではそのためにはどうしたら良いでしょうこの sql の「 LIMIT 」というオプションはこのように件数を指定するだけではなくスタート位置を指定する事も出来ます例えば「 5, 5 」という風にすると一つ目の「 5 」というのはこれはスタート位置 いわゆるオフセットといわれるものになりますつまり最初の 5 件を読み飛ばしそこから 5 件データを取得するという意味になるため こちらで画面を再読み込みするとこのように「6」「7」「8」「9」「10」という5 件が取得されますでは 三ページ目はどうなるかというとこれはお分かりの通り「 10, 5 」とする事で「 10 」から「 15 」まで取得する事ができるという事になりますそして例えばここで今度は「 15 」から 5 件取得する つまり四ページ目になります実際にアクセスすると このように1 件も取得されなくなりますこれはこのデータベースのテーブルには今全体で 15 件しか記録されていませんので三ページ目までしかないという事になりますでは 例えばこれば「 5 」「 10 」「 15 」等といった切りのいい数字ではなく 16 件登録されていたらどうでしょうかここでは 1 件データを追加して確認してみたいと思います「カテゴリ」とし「くだもの」等としここでは「グレープフルーツ」追加してみますこちらで登録をしてみましょうするとこのように今 16 件目の「グレープフルーツ」が表示されるようになりました今この sql は「 LIMIT 」が「 15 」オフセットが「 15 」ですねそして 5 件と指定されているんですけれども「 LIMIT 」の 5 件という風に指定してもデータが1件しかなければ1 件しか取得されませんそしてそれ以降のスクリプトの方でも特に5 件という風に定めている部分はありませんデータがある限りというかたちで繰り返しているのでこれは正しく動作しますという事でこのように「5」「10」「15」という切りのいい数字ではなくてもきちんとページングとして機能するようになりますのでこの「 LIMIT 」という sql の構文がうまく使える事が分かります次のレッスンでも引き続きこのページング処理を行っていきましょう

PHP+MySQL入門

MySQLというデータベースはPHPと連携させてウェブサイト上で利用することによってよりその威力を発揮します。このコースではPHPとMySQLを組み合わせたWebシステムを構築する手法を紹介します。コースの後半ではページングの処理の仕方などについて学びながら、具体的に挿入画面や編集画面の作成を行っていきます。

3時間08分 (21 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2014年01月20日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。