PHP+MySQL入門

データベースへの接続

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
データベースに接続するには、mysql_connectファンクションを利用します。接続のときの注意点をあわせて紹介しましょう。
講師:
08:59

字幕

ここでは、データベースへの接続としてPHP から MySQL に接続する方法というのをご紹介していきたいと思います。では、まずはこちらプロジェクトの紹介をしていきましょう。lesson01-04 というフォルダーをMAMP のアップロード先フォルダーであるMAMP の htdocsにコピーしました。この中には index.php というファイルの他にスタイルシートを整えるstyle.css というファイルや画像群などが含まれています。では、まずはこのファイルを確認してみましょう。MAMP を起動し「サーバを起動」としましてApache と MySQL が起動していることを確認したらこちら Web ブラウザーでlocalhost:8888/lesson01-04という URL にアクセスをします。この様に画面が整った画面が表示されます。ここにスクリプトを組み込んでデータベースに接続していくという手順を行っています。では、こちら そのファイルをまずは編集していきましょう。index.php を DreamWeaver などエディターソフトで開いてまずは少しタイトルを付けます。そしてこちらもこの様にします。 では、ここにPHP を組み込んでいきましょう。PHP の書き方というのはまずその PHP の始まりと終わりに特殊なタグを記述します。<?php から始まって ? 記号で終わります。続いて、ファンクションというものを定義していきます。ここでは mysql_connect というファンクションを使いました。そして、この中にパラメーターを記述していきます。ここでは 'localhost','root',と記述しましょう。XAMPP の場合は最後の root というのがなくなり? 記号2つになりますので気をつけて下さい。では、これで ; を打ちましょう。PHP は文章、スクリプトの最後に必ず ; を打ち込む必要があります。これで接続のスクリプトが完成しました。では実際に確認してみましょう。Web ブラウザーに移りまして今打ち込んだ 8888/lesson01-04 に再びアクセスをします。すると、この様にタイトルが表示されますが内容は特に何も表示されていません。しかし、これで裏側でデータベースに接続されています。もしこの時、何か情報を間違ってしまった場合例えばこの様に記述を間違えてしまったとしましょう。 この場合でも特に画面には変化はありません。そのため、間違えないように記述をしなければなりません。それを防ぐ方法もあるんですがその前にまずはこのmysql_connect についてもう少し詳しくお話ししていきましょう。この mysql_connect というファンクションは読んで字の如くという感じですけれどMySQL にコネクトする、ということでMySQL に接続するためのファンクションです。3つのパラメーターが必要でまず最初は MySQL のサーバーのアドレスが必要になります。こちら MAMP や XAMPP を使っている場合はlocalhost という記述になります。念のため、こちら MAMP で「スタートページを開く」とクリックした時に表示されるページを見ていきますとここ「ホスト」の所にlocalhost と書かれています。これが、この1つ目のパラメーターに記述する内容です。そして、2つ目のパラメーターに記述するのが「ユーザ名」です。MAMP の場合は rootXAMPP も同じく root です。3つ目のパラメーターが「パスワード」です。MAMP の場合は rootXAMPP は「パスワード」はなしとなりますので、クオテーションマークが2つ並ぶことになります。 さて、先程接続のこれら情報を間違えてうまく接続できていない状態だったはずのものですけど画面に特に何も表示されませんでしたが一体何が起こっていたのでしょうか。実はこれは MAMP のログを見ればわかります。MAMP フォルダーの logs フォルダーの中にphp_error.log というファイルがあります。こちらを DreamWeaver などのエディターソフトで開いて一番下までスクロールをするとこの様にmysql_connect がPHP Warning ということでエラーを出していることがわかります。そして、Access denied でuser 'x' ということでこの x というユーザーはアクセスを許されていないというようなエラーが表示されていました。この様にログを見れば一応何が起こっていたかはわかるんですが注意しないといけないのはここで発生しているのがPHP Warning であるという点です。PHP のエラーには幾つかの種類があります。例えばこちらの PHP Fatal error というものやPHP Warning、それから Notice と言われるものもあります。それぞれエラーのレベルが異なるわけなんですがPHP の Fatal error 等の場合それ以上処理が進められなくなりますのでその時点で、その PHP の処理は終了してくれます。 しかし Warning や Noticeというのは注意を促すだけで、残念ながらスクリプトの処理を止めることはありません。しかし、MySQL に接続できなかったという状態はスクリプトにとっては、かなり致命的でそこから先の処理が正しく進むとは思えません。何故、この PHP Warning が発生するのかというのはこの mysql_connect が出しているこのエラーというのはあくまでも MySQL 側のエラーになります。そのため、php にとってはこの MySQL に接続できなかったというのはそれほど重要な状態ではないわけです。そこで、ここではこの mysql_connect が失敗した場合には処理をその場で終了させるというようなスクリプトを組み込まなければ後々困ることになるかもしれません。そこで、この様にスクリプトを変更していきましょう。今記述した mysql_connect のすぐ後に、; の前です、or と記述します。そして、ここでは die と記述しmysql_error と記述しましょう。こちら、情報が正しい場合に画面を再読み込みすると特に何も発生しません。しかし、こちら例えばユーザー名を間違えてしまった場合などはこちら、再度読み込むと先程ログに記憶されていたAccess denied というこちらのエラーメッセージが画面に表示されるようになりました。 そして、このスクリプトはこの die という記述によってこの時点でスクリプトが終了しています。そのため、例えばここでprint などとして「こんにちわ」などとするとこの様に、「こんにちわ」というメッセージは画面にはでなくなります。そして、こちらユーザー名を正しく記入すればこの様にスクリプトは正しく動作して「こんにちわ」というメッセージが表示されるようになります。この様に mysql_connect 等を初めとするMySQL を操作するファンクションに関しては処理がそのままでは終了しなくなってしまいますのでこの or die という記述を付けて中に mysql_error というパラメーターを記述するようにしましょう。これはもう決まり文句と思ってmysql_connect の後やその他の場所に記述すると覚えていくと良いでしょう。これで、MySQL の接続が完了しました。

PHP+MySQL入門

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

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

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

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

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