PHPによるWebアプリケーションスーパーサンプル 第2版

PHPスクリプトのサンプル集PHPによるWebアプリケーションスーパーサンプル 第2版の特徴です。

本書の特徴 目次  デモ PHPとは 最初の1ページ ゲストブックを作成しよう DBスクリプト自動生成 wiki
【広告】PHPの頻出関数リファレンス「PHP辞典 第2版」
【広告】PHP入門書でありながらSmarty・PEARまで説明します「初めてのPHP & MySQL 第2版」

DBスクリプトジェネレータ (本書14章:14-11)

データ定義を選択してくだけで、MySQLのテーブルを編集(表示、追加、変更、削除)する画面を自動で生成するスクリプトです。

 

サーバー、データベースを選択し、操作したいテーブル、フィールドを選択していくと、こうした機能を含むスクリプトが生成されます。あくまでお役立ちツールなので、レンタルサーバーなど、不特定多数のアクセスがある場所に配置しないようにしましょう。

 

スクリプト生成までのステップは次のように進みます。

 

ステップ1:サーバー選択

 

 

ステップ2:データベース選択

 

 

ステップ3:テーブル選択

 

 

ステップ4:フィールド選択

 

 

DBスクリプト完成

フィールドの選択が完了すると、スクリプトが完成します。「完成スクリプト」をクリックすると、作成されたスクリプトに早速アクセスすることができます。また、テキストエリアに表示されたコードを編集して「保存」ボタンをクリックして動作を確認することもできます。

 

※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より)

 

 

PHPによるWebアプリケーションスーパーサンプル 第2版