セッション管理を使った実用になる受け付けフォームを作ってみましょう。
「必須」を * や ※ で表すことがありますが,日本のスクリーンリーダーでは読めないらしいので,ここでは「必須」と書きました。
単なるフォームなら次のようにすれば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