メールフォーム エラーチェック - PHPプロ!Q&A掲示板
2824
- 0P
- 0P
メールフォーム エラーチェック
質問日時 / 2010年7月26日 22:56 (最終編集:7月27日 09:52) 回答数 / 6件
Questioner: h032313
Tweet
メールフォームを作成しており、エラーチェックで困っています。
簡単に流れを説明しますとフォーム画面で入力をしてもらったら確認画面へと移行します。
ここでエラーがあった場合、confirm.phpにてエラーチェックをし、form.phpに戻り、エラーがなければ確認画面にて入力した、項目が表示されるようにしたいと思っています。
ソースは下記のとおりになります。
- form.php
- ---------------------- */
- <html>
- <body>
- <form action="confirm.php" method="post">
- 名前:<input type="text" name="name" value="" / echo $errmsg['name'] ;<br>
- 内容:<textarea name="comment" rows="5" cols="40"></textarea> echo $errmsg['comment'] ;<br>
- <input type="hidden" name="contact" value="form" />
- <input type="submit" name="submit" value="確認" />
- </form>
- </body>
- </html>
- confirm.php
- ---------------------- */
- $name = $_POST['name'];
- $comment = $_POST['comment'];
- if(isset ($_POST['contact'])) {
- $errmsg = array();
- if(empty($name)){
- $errmsg['name'] = '未入力';
- }
- if(empty($comment)){
- $errmsg['comment'] = '未入力';
- }
- if (count($errmsg) != 0) {
- header("Location: form.php");
- exit;
- }
- }
- <html>
- <body>
- 名前: echo $name; <br />
- 内容: echo $comment; <br />
- </body>
- </html>
としております。
if (count($errmsg) != 0) {
header("Location: form.php");
exit;
上記のようにするとエラーチェックの表示がされません。
require(form.php);にするとform.phpが表示されるのですがURLを見るとconfirm.phpの状態になっております。
header("Location: form.php");を使用してのエラーチェックをしたいのですが、どのように記述したらよろしいのでしょうか?
上記の内容でどなたかご教授いただけないでしょうか?
宜しくお願いいたします。
この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。





ページのトップへ


GETのままでは検索エンジンのロボットが拾ってくれなかったためにSEO対策として有効だと言われていますね。