データベースを使ったWebアプリとして,次の4つの機能を備えたものをCRUD(クラッド)システムと呼びます。
では最初に,app.jsをWebアプリ化します。データベース接続部分のみをブラウザで実行確認できるよう,下記のように変更してください。
index.html
は下記の4つへのリンクがトップに出てくるように構築します。
/create
へのリンク/read
へのリンク/update_delete
へのリンクここで,/read
時の実行コードを,SELECT命令を使って実装します。app.js
の追加分とread.pug
(layout.pugは適宜考えてください)を下記に示します。。
次は次のようなフォーム(create.html
を付け,追加するデータをフォームから入力し,データベースに保存できるよう改良します。idは自動的に付加させたいので,あらかじめphpMyAdminからAuto incrementの設定を追加しておいて下さい。
create.pug
はINSERT実行後のSQL文確認用として,簡素に作っておけばよいでしょう。
実行したら,データがきちんと挿入できたかどうか,/read
を実行して確認して下さい。
既存データを更新・削除するためには,まずどのデータを削除したいのか,一覧表からユーザに選んでもらう必要があります。そのために,各データに「更新」と「削除」ボタンを付けることにします。
/update_delete
実行時にはupdate_delete.pug
を表示します。
更新ボタンクリック(/update実行)時の処理は下記のようになります。更新用のデータをフォームにあらかじめ読み込んで置き,必要なところだけをユーザに修正させます。
データ削除については,皆さんへの宿題とします。独自に作ってみて下さい。先生役の人は,全員の進展状況を見て,適切に助け船を出してあげて下さい。
以上で,データの閲覧(/read),追加(/create),更新と削除(/update_delete)が可能なCRUD Webアプリが完成したことになります。全ての処理が正常に動くことを再度確認して下さい。
最後に,このCRUD Webアプリのリンク関係を図にしてみましょう。すべてのHTMLファイル,PHPスクリプトがどのようは役割を果たし,どのようにリンクされ状態遷移するのか,人に説明できる図を書けるようになって初めてWebアプリは完成したことになります。
CRUD Webアプリ ファイル関係図
この最小限のCRUD Webアプリはまだまだ機能的に不足しているところがあります。すぐにできそうな改良は