簡単なformの作り方とフォーム入力確認ページの作り方の続きです。
最後にこのようになページ作ってみたいと思います。
formのaction属性で指定したform_submit.phpというページを作っていきます。
しかし、前回のページのままだと、なにもinputされていないので、勿論postに値を格納することができません。
そこで、前回のHTMLに少しだけ書き加えてみます。
<p>Please check!!</p> <?php $user_name = $_POST["user_name"]; $title_box = $_POST["title_box"]; $message_box = $_POST["message_box"]; ?> <form method="POST" action="form_submit.php"> <table border="1"> <tr> <td>user name</td> <td><?php echo htmlspecialchars($user_name, ENT_QUOTES) ?></td> </tr> <tr> <td>title</td> <td><?php echo $title_box; ?></td> </tr> <tr> <td>message</td> <td><?php echo nl2br($message_box); ?></td> </tr> <tr> <td colspan="2"> <input type="submit" name="submit2" value="send"> </td> </tr> </table> <input type="hidden" name="name" value=" <?php echo $user_name; ?> "> <input type="hidden" name="title" value="<?php echo $title_box; ?>"> <input type="hidden" name="message" value="<?php echo $message_box; ?>"> </form>
最後の三行を書き加えました。
hiddenは画面に何も表示させずに、inputさせるために使う属性です。
さて、これでこのページも情報がinputされたことになるので、ポスト関数を使って次のページに情報を受け渡すことができるようになりました。
次のページのHTMLをみてみましょう。
<?php $name = $_POST["name"]; $title = $_POST["title"]; $message = $_POST["message"]; ?> <p>Your message has been sent!!</p> <table border="1"> <tr> <td>user name</td> <td><?php echo $name; ?></td> </tr> <tr> <td>title</td> <td><?php echo $title; ?></td> </tr> <tr> <td>message</td> <td><?php echo nl2br($message); ?></td> </tr> </table>
このように記述しました。
このページ自体に特別な何かが施されている訳ではありませんが、
ポストに値を渡すときは何らかのinputが必要だという事が大切
です。
以上