初めてのSQLとかいう本を読みつつ、MySQLの使い方を勉強。
今日は、とりあえずPHPからMySQLにアクセスすることを目標に進めた。
DreamWeaverにはデータベースアプリケーションのための機能が色々と付いてるみたいだが、使い方がよく分からない。その機能を使ってデータベースに接続するところまではできたが、それとPHPスクリプトとの関連が謎。これはマニュアルを読むべきか。
ちなみに、接続する際に少し躓いた部分がある。ユーザtest@localhostとして繋ごうとしたが、MySQLに登録してあったtestのホストはkusu.jpn.chのみ。この場合、これらを自動的に同じものと解釈してくれるわけではなく、別々のものとして認識されるようで、接続を拒否されてしまった。新たにtest@localhostユーザを作成するとうまく接続できた。
で、早速データベースにアクセスするPHPコードを書こうとググってみたところ、まず一番目にpearのDB.phpを用いた方法が紹介されてるページが見つかった。早速サンプルコードをコピペして実行してみたが、DB.phpが見つからない旨のエラーが出た(httpdのエラーログ)。
よくよく考えてみると、そもそもこのブログのデータベースアクセスの際にDB.phpは使っていなかったはず。このブログのインストール時の記録を調べてみると、php-mysqlというパッケージをインストールしていたことが分かった。色々調べていると、DB.phpを使うのは時代遅れ、といった内容の記事も見つけた。
そこで、php-mysqlパッケージを使ったデータベースアクセスについて解説しているサイトを探し出し、サンプルスクリプトを弄ってテストしてみたところ、成功。
さらに少し弄って、かなりやっつけだがデータの書き込み・読み込みをするようなスクリプトを作った。
以下は、用いたテーブルの定義。
create table bbs( res_num SMALLINT UNSIGNED AUTO_INCREMENT, res_time DATETIME, res_name VARCHAR(30), res_text TEXT, res_host VARCHAR(15), CONSTRAINT pk_bbs PRIMARY KEY (res_num) );