PHPスクリプトのサンプル集『PHPによるWebアプリケーションスーパーサンプル 第2版』の紹介です。
本書の紹介:特徴 目次
デモ PHPとは 最初のPHP ゲストブックを作成しよう DBスクリプト自動生成 著者のWebサイト
PHPトピック(書籍未掲載):PHPの基本構文(1) PHPの基本構文(2) PHPコードクイズ PHP+Twitter連携サンプル
データ定義を選択してくだけで、MySQLのテーブルを編集(表示、追加、変更、削除)する画面を自動で生成するスクリプトです。
サーバー、データベースを選択し、操作したいテーブル、フィールドを選択していくと、こうした機能を含むスクリプトが生成されます。あくまでお役立ちツールなので、レンタルサーバーなど、不特定多数のアクセスがある場所に配置しないようにしましょう。
スクリプト生成までのステップは次のように進みます。




フィールドの選択が完了すると、スクリプトが完成します。「完成スクリプト」をクリックすると、作成されたスクリプトに早速アクセスすることができます。また、テキストエリアに表示されたコードを編集して「保存」ボタンをクリックして動作を確認することもできます。
※CD-ROM掲載のサンプルには、「保存」ボタンの処理に誤りがありました。正しいスクリプトは、こちらからダウンロードお願いします。


生成されるスクリプトは、app/generated.phpとして保存されます。このスクリプトのもとになるテンプレートは、tempディレクトリに保存されています。MVCでもなければSmartyと連携したものでもありませんが、1スクリプトという単純構成なので参考にしてください。
完成したスクリプトに含まれる機能は、ログイン、一覧表示、検索、登録、変更、削除です。これらの機能は、テンプレート(この例ではtemp/temp.php)に記述されており、ステップ4までに選択されたデータ定義と結合して出力しています。

フィールド名がそのまま出力された列見出しや、アプリケーションタイトルは、次のように変数に格納されており、変数値の設定によって任意の文字列に変更していただくことができます。
// 各フィールド画面表示名
$text["prodid"] = "prodid";
$text["cateid"] = "cateid";

ぱっと見ただけで、いくつかの課題に気づいたかもしれません。ただし、基本的な機能の構築には時間をかけず、動くものを見ながら直していくDIY的な楽しさ(?)を感じていただけるのではないでしょうか。とはいえ、いくつかの課題を挙げておきますので、動きがおかしいと感じた場合は、参考にしてください。
・1テーブルの操作のみに対応(テーブル結合に対応していない)
・主キーは1フィールドという前提(temp/temp.phpより)
・全処理を1ファイルに出力する(temp/temp.phpより)