受け付けフォーム

セッション管理を使った実用になる受け付けフォームを作ってみましょう。

メール(必須):

氏名 (必須):

備考(オプション):

「必須」を * や ※ で表すことがありますが,日本のスクリーンリーダーでは読めないらしいので,ここでは「必須」と書きました。

ソース

単なるフォームなら次のようにすればOKです。

<form method="post" action="apply2.php">
<p>メール(必須):<input name="email" size="40" /></p>
<p>氏名 (必須):<input name="name" size="40" /></p>
<p>備考(オプション):<br />
<textarea name="memo" rows="4" cols="60">
</textarea>
</p>
<p>
<input type="submit" value="確認ページに進む" />
</p>
</form>

しかしここでは入力値をセッション変数で覚えさせておき,途中で間違って変な方法でこのページに戻ったとしても直前の入力状態が保たれるようにしてみましょう。

まず,ファイルの先頭で次のようにしておきます。

<?php
  session_set_cookie_params(0, '/~okumura/');
  session_start();
?>

フォームの部分は,変更点だけを書きます。

<p>メール(必須):<input name="email" size="40" value="<?php echo htmlspecialchars($_SESSION['email']) ?>" /></p>
<p>氏名 (必須):<input name="name" size="40" value="<?php echo htmlspecialchars($_SESSION['name']) ?>" /></p>
<p>備考(オプション):<br />
<textarea name="memo" rows="4" cols="60">
<?php echo htmlspecialchars($_SESSION['memo']) ?>
</textarea>

もっといろいろ聞いてみる

一つ選ぶにはラジオボタンを使います。

<form method="post" action="apply.php">
<p>
<input type="radio" name="sex" value="male" /> 男
<input type="radio" name="sex" value="female" /> 女
</p>
</form>

複数選択はチェックボックスを使います。

昼のお弁当を申し込む
懇親会に参加する

<form method="post" action="apply.php">
<p>
<input type="checkbox" name="lunchbox" value="yes" /> 昼のお弁当を申し込む<br />
<input type="checkbox" name="banquet" value="yes" /> 懇親会に参加する
</p>
</form>

奥村晴彦

Last modified: 2009-08-06 15:49:08