PHP+MySQL入門

一覧画面の制作

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
入力されている画面を、Web経由で閲覧できるようにすると今登録されている商品などを調べることができて便利でしょう。ここでは、一覧画面の制作方法を紹介します。
講師:
11:39

字幕

ここでは一覧画面の製作というものを行ってみたいと思います例えばこのような「商品登録」の画面がありここで各情報を入力して登録をする事でテータベースに登録ができる画面があったとしても実際に登録ができたのかどうかというのをこの MAMP のphpMyAdmin のツールを使って確認しなければならないというのでは非常に面倒ですやはり登録できたかどうかですとか今どんな情報が登録されているのかといったような一覧画面というのはぜひ管理画面には欲しい画面の一つではないでしょうかそこでここでは このような一覧画面を表示するというような機能を作ってみたいと思いますでは まずプロジェクトを紹介していきますここでは lesson 02-04というフォルダの中にinput.php という登録の画面がある程度完成した状態で入っていますそして index.php というファイルがあり ここではこのようなデータベースへの接続の文字列と後は html が少し書かれているだけというファイルがありますまたデータベースの方を見ていきましょうデータベースは「 phpmysql 」というデータベースのスペースを作りそこに「 genre_master 」[ item_log ]そして「 item_table 」というテーブルがありますこれらのテーブルの情報はこちらの素材ファイルの中に含まれていますのでこちらの「 phpmysql 」というsql ファイルをこちらデータベースを新しく作って こちらに「 phpmysql 」というデータベース名を入れ「照合順序」として[ utf8_general_ci ]を選びますそしてこちら データベースの名前を選んで「インポート」のから こちらでバックアップのファイルを選んでそして こちらでインポートしてくださいでは こちらでプロジェクトを製作していきましょう今回編集するファイルとしては こちらindex.php になりますそしてまずここで データベースへの接続は成功しているためここでデータベースの情報を取得してきますmysql_query というファンクションを使っていくわけなんですが「 SELECT * FROMitem_table 」とするわけでこちらで「 SELECT 」というsql を使う事になりますのでここではただ単にファンクションを呼び出すだけではなくてここに変数を指定する必要がありますこの「 $rows 」というのをレコードセットというんですけどもmysql_query で発行されたsql の結果というのを格納する変数ですこのレコードセットはそのままでは使えませんので加工して使う事になりますまずその前にこちらmysql_query の最後のところにはいつもの「 or die(mysql_error)」こちらの記述も加えておきましょうではこの「 div 」の「 id=content 」という中にこちらで取得してデータを引っ張って表示するようにしてきますここでは「 table 」タブを使っていきましょう「 tr 」とし[ th ]それから「 th 」で「商品名」そしてここでは「価格」としましょうさらにこのよう空の「 th 」を付けますそして ここでは例えばですけれども 「 th 」で「1」それから「 td 」で例えば「いちご(イチゴ)」こちらが「商品名(カナ)」ですそして「 td 」でここでは「120」円としさらに「 td 」でここにはこの後のレッスンでやっていくんですが変更するというような機能や 削除というような機能を加えていきたいと思っていますここではこのように空白のままにしておきましょうそして「 tr 」を閉じてテーブルを閉じるというこちらのテーブルを作っていきます一度まずは表示を確認しておきましょうサーバーをスタートとしまして こちらでサーバーが起動している事を確認したらSafari から lesson02-04 にアクセスをしますそしてここでは index.php にアクセスをしますのでファイル名は省略して こちらにアクセスする事ができますこのように行がどんどん増えていくというかたちになりますのでではこちらでスクリプトを作っていきましょう繰り返すのはこの「 tr 」のタグから[ tr ]の閉じタグまでとなりますそこでここに このように記述していきますまず[ while ]としまして[ $row ]が「 mysql_fetch_assoc 」というファンクションに先程取得したレコードセットである「 $rows 」というのを割り当てますこの「 mysql_fetch_assoc 」というのはassoc associateつまり電送配列に mysql の情報を fetch 紐づけるというようなファンクションでこの「 $rows 」というレコードセットという変数からデータを取得して「 row 」という変数に連送配列として展開してくれるという役割がありますそのためここで「 while 」の中で使えば例えばここでは「 print 」として「 $row 」の「 id 」とすればその商品の「 id 」を取得する事ができますまた こちらで「 item_name 」とすればこれで 商品の名前を取得する事ができさらに 「item_name_kana 」とする事で 商品名のカナ情報を取得する事も出来ますさらには「 print 」の「 $row 」として「 price 」とする事で商品の価格も表示する事ができますそして最後にここで「 endwhile 」として繰り返しを終了としましょうこれでスクリプトの完成となりますこのように「 $rows 」に持ってきた[ SELECT ]のsql の結果を「 mysql_fetch_assoc 」で行に割り当ててそれぞれの行を表示するというわけですでは動きを確認してみますこちらブラウザで 再度読み込みますするとこのように登録した情報がそれぞれ入ってきていますでは例えばこちらでinput.php にアクセスをし新しい商品を追加してみましょうここでは「くだもの」として[ぶどう]を登録してみます「250」円として登録してみましょうするとこのように「商品を登録しました」と出ますがここで こちら index.php にアクセスしますと このように[ぶどう]が登録されている事が分かりますさて最後にですけれどもこのように index とそれからinput ができましたが今はわざわざ url を打ち込まないと登録画面に移動できませんこれは非常に不便ですのでこの index.php から商品登録の画面に移動できるようにすると良いでしょうそこでここではこの「 content 」の「 div 」が始まった直後のところに「 p 」の「 href 」そして「 input.php 」に「商品を登録する」といったリンクを準備すると良いでしょうするとこちら index の方からこのように「商品を登録する」というリンクができ クリックをする事で商品登録画面にアクセスする事ができますさらにもう一つ 現在は商品登録のこちらの画面で商品をこのように登録するとこちら改めて商品登録の画面が表示されてしまいますしかし続けて商品を登録したい場合ももしかしたらあるかもしれませんが一般的には商品を登録したら正しく登録されたのかどうかを確認するために一覧画面にジャンプしたい事が多いのではないでしょうかもし続けて商品を登録したいという場合でもここに「商品を登録する」のリンクがあるのでそれほど不便はしなさそうですそこで商品登録の画面では 登録が終わったら一覧画面に戻るという動きを作ろうと思いますではここでは こちら Finder からlesson 02-04 のinput.php を開きますそして今は こちら商品が登録されると仮のメッセージとして27行目で「商品を登録しました」というメッセージを表示するようにしているので ここで画面を移動するというファンクションを仕込んでみましょうphp で画面を自動的に移動するには「 header 」というファンクションを使いますそしてここに「 location 」というパラメーターを指定しここに移動先の url を記述していきますそして header ファンクションはセットで exit というファンクションを使う事になるんですけども これによってここで処理を終了し 続きの処理は行わないという事を明確に指定してきますではこちらで画面を確認してきましょうこちら一覧から商品を登録する画面で「カテゴリ」でちょっと適当な情報を保存していきますこちら そして「登録する」ボタンをクリックしますするとこのように一覧画面に移動し このように新しい商品が登録される事が分かりますそして続けて商品を登録したい場合はさらにこちらのリンクをクリックすれば新しい商品を登録できるという事で非常に扱いやすいこういった画面ができたのではないかと思いますこのように画面の遷移の仕方等によっても管理画面の使い勝手はぐっと変わってきますのでぜひ利用者がどのような利用をするのかという事を想定しながら画面遷移を考えてください

PHP+MySQL入門

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

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

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

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

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