PHP+MySQL入門

SQLの実行1

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
データベースへの接続などの手続きが終了すると、SQLを発行してデータベースを操作することができるようになります。ここでは、さまざまなSQLを利用してデータベースを操作してみましょう。
講師:
10:49

字幕

ここでは SQL の実行としましていよいよデータベースに PHP からSQL を投げてデータベースを操作するという所をやってみたいと思います。SQL というのは今画面に表示されているようなこういった文章のことを言います。データベースを操作する専用のスクリプト言語で例えば、この場合 selectこれはデータを検索します、もしくは読み出しますというような意味です。そして、* というのはすべてのフィールドを検索の対象としますという意味です。そして、from に続いてテーブル名というものを指定します。すると、こちら実行ボタンをクリックするとこの様に アイテムテーブルという商品を管理しているテーブルから情報を持ってくるということができます。この SQL というのは基本的にデータべースに接続し私たちがこの様に手で記入することで利用するんですがPHP を利用した場合その PHP のスクリプトの中にSQL を埋め込むことでデータベースに対して、その操作を投げかけることができるというわけです。では実際にやってみましょう。まず PHP のプロジェクトを準備します。lesson01-06 というフォルダーをコピーしますとこちら index.php や各種素材がありindex.php の方では、この様にデータベースに接続してデータベースを選択し文字コードを設定するという所までが行えています。 そして、データべースの方も準備していきましょう。こちら、ホーム画面に戻ります。一番左側のボタンをクリックしてホーム画面に戻ってこちら、左上の「データベース」というタグをクリックしましょう。そして「データベースを作成する」という所でphpmysql というデータべースの名前を付けて「照合順序」に utf8_general_ciと設定します。そして「作成」ボタンをクリックしましょう。これでデータべースが作成されました。では続いてテーブルをここに作成していきます。SQL というタブをクリックして頂いてここにこのように記述していきましょう。create tableitem_table とし括弧をします。id を int の primary key のauto_increment としましてitem_name を varchar の 500そして price を int という形で記述していきます。念のためですが、これはテーブルitem_table という名前のテーブルを作成しその中に id というフィールドを作ります。その id というフィールドは整数を入れる int 型でしかもこの id は primary key という所謂、このテーブルの中で最も重要な primary な key であるという定義をします。 この primary key という定義をするとこのテーブルの中で id が重複できなくなるつまり id 1番のデータが2件、3件と作られることを防ぐことができるようになりデータベースの精度がぐっと上がるという仕組みです。それから、auto_incrementというオプションを付けています。ここでは、データを挿入するたびに1ずつ加算していく、というものです。item_name というフィールドを続けて定義しこちらは 500 文字の varcharつまり文字列型として定義しています。そして price こちらは int 型として価格を数字で記録するというフィールドを作りました。ではこちらで実行ボタンをクリックしましょう。この様にテーブルが作られてこの様に確認することができます。ではこのテーブルにデータを挿入してみましょう。再び SQL という欄をクリックしここに insert into と記述します。item_table と記述しSET として item_name に「いちご」と記述します。更に price に 120 等と記述しましょう。これで実行ボタンをクリックするとこの様に item_name が「いちご」でprice が 120 というデータが入るというわけです。 今の INSERT という SQL を打ち込むとこの様にデータベースのテーブルにデータを入れることができます。では、これを PHP を経由して行ったらどのようになるでしょうか。実際にやってみましょう。では、こちら lesson01-06 のindex.php にスクリプトを記述していきます。ではこちらにスクリプトを記述していきます。mysql_query('SET NAME utf8')記述されているすぐ後の所にこの様に mysql_query というファンクションを記述しこの名に INSERT INTOitem_table と記述します。そして、SET としてitem_name としましょう。そして、例えばここでは「みかん」としprice を 80 とします。尚、このすぐ後にも同じようにmysql_error と記述しておきます。これでスクリプトが完成しました。ここで注意しなければいけないのはここの部分 ' 記号です。mysql_query というファンクションのパラメーターはこちら、文字列ですのでその両端には ' 記号が必要です。そして、SQL の item_name のここの所にも ' 記号が必要なので、このままいくと ' 記号が重なってしまいます。 そこで、この様に SQL のクオテーションマークは ダブル "PHP の クオテーションマークはシングル ' にしています。この分け方ちょっと気を付けて記述して下さい。この後、改めて詳しく紹介していきましょう。ではまずこれで動きを確認してみます。こちら、Web ブラウザーに切り替えてこちらの 8888/lesson01-06というページにアクセスをしましょう。すると、画面には何も表示されませんが逆にエラーメッセージが表示されてなければ正しく動作しています。では、データベースの方を確認してみましょう。こちら、phpMyAdmin に切り替えてphpmysql というデータベースのitem_table というテーブルをクリックしてみます。そして「表示」というタブをクリックするとこの様に「みかん」が 80 円で記録されていることがわかります。これで PHP から MySQL へSQL を投げかけてデータを登録するという一連の手続きができました。この mysql_query というファンクションは中に SQL を書けばどんなものでも書くことができます。例えばここでは SQL を少し変更してアップデートの SQL を作ってみましょう。 UPDATE item_table とします。そして、SET としprice を例えばここではわかりやすく 5000 等としましょう。更に WHERE とし id= で「みかん」の値段を変えるためにid=2 とします。ではこちらで同じくページを表示してみましょう。MAMP を起動するとこちら、「みかん」の price が5000 等となっていて正しく動いていることがわかります。更に DELETE も試してみましょう。DELETE として fromそして item_table と記述しWHERE id=2 と記述します。これで今追加した、この「みかん」というデータは削除されるはずです。では実際にページを確認してみましょう。ページを表示すると、こちら「いちご」だけになりました。「みかん」が消えています。この様に INSERT それから UPDATEそして DELETE各 SQL を投げることができました。また SELECT という SQLつまり検索やデータを取得するという SQL を入れることもできるんですけどそれについては、また別のレッスンで紹介していきたいと思います。尚、先程 INSERT INTO というこちらの SQL を紹介しましたが先程も出てきた通りこちらの クオテーション記号というのがSQL の中には必要になってきます。 そして PHP のパラメーターにもクオテーション記号は必要なのでここで SQL の クオテーション記号としてシングル ' を使ってしまうとこれは PHP のエラーとなってしまいます。そのため、もし SQL の中で シングルクオテーション ( ' ) を使いたいのであればPHP のパラメーターはこの様なダブル ” にしなければなりません。どちらもシングルクオテーション ( ' )、 ダブルクオテーション ( ")いずれも使うことができるのでこの様に使い分けさえすれば重ならなければ特に問題はありません。どちらを使うかは判断次第なんですが基本的には PHP のパラメーターにはシングル ' を使っていただきSQL のパラメーターの部分に、この様にダブル " を使った方が安全性が高いと言えます。この様に mysql_query というファンクションを使ってデータベースを操作することができますので様々な SQL で確認してみると良いでしょう。

PHP+MySQL入門

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

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

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

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

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