Web アプリケーションを作り始める前に決定することは、以下の通りです。
今回作成するのは「投票ページ」なので、まずは「既存の項目に対して1票を投じる」という機能を持たせましょう。また「新規項目の登録」という作業も持たせることにします。
数人程度と規定します。ま、サンプルなので。
この項目は、ブラウザができることで制限されます。今回は、
- ボタンを押す ... 1票を投じる
- 文字列を入力する ... 新規項目の登録
とう操作を扱います。
とりあえず、投票内容をファイルに保存することにしましょう。
さて、上記で大まかな確認が終わったので、以後は実際にアプリケーション作成を行っていきます。
では、作成するページの完成図をノートか何かに書きだしてみましょう。
何かを作る、ということは、頭の中の想像的なものを具体的なものに落とし込んでいく作業なので、完成図を思い描く作業はとてもよいことです。で、私が完成図を思い描くとこんな感じになります。
いつもながら、シンプルすぎる図...
さて、完成予定図もできたことですし、アプリケーションの実装に必要な要素の確認を行いましょう。
これは、「ボタンを押した」「テキスト入力が行われた」といった Web ブラウザに対する操作を PHP で受け取る方法についてです。では、以下のサンプルを表示してみて下さい。
<?php
echo $_POST['animal'];
$this_page = basename($_SERVER['REQUEST_URI']);
echo '<form action="'. $this_page. '" method="post">';
echo '<input type=submit name="animal" value="rabbit">';
echo '<input type=submit name="animal" value="fox">';
echo '</form>';
?>
サンプルへのリンク
はい、PHP にユーザからの入力を伝える方法は、ぶっちゃけこんな感じです。 他にも、input で渡せる要素として text, password, checkbox, radio, submit, reset, file, hidden, image, とかありますが、情報の渡し方はだいたい同じです。宿題。
Web アプリケーションでは、PHP スクリプトの実行から表示の完了までが短時間で終わることが求められます。つまり、ユーザからの入力待ちは通常行われません。従って、今回作成する投票ページ処理の流れは、
- データから現在の投票情報をファイルから読み出す
- 投票情報が POST に入っていたら処理
- 投票の数の順に項目をソートし、表示
- 投票情報をファイルに保存
という風になります。なので、あとはこれをプログラムにすれば完了です。 簡単ですね。
では、実際の投票ページ作成は、実地で...。
がんばろう。