【勉強メモ】PHP⑫〜フォーム7続き〜
check.php
<?php require_once dirname(__FILE__).'/func.php'; if(!isset($_POST['name'])||!isset($_POST['email'])||!isset($_POST['message'])){ header('Location:index.php'); exit; } $name = $_POST['name']; $email= $_POST['email']; $message = $_POST['message']; $success = true; $name_error=''; $email_error= ''; $message_error= ''; //@が入っているかのチェック if(strpos($email,'@')===false){ $email_error = '@が入っていません'; $success = false; } //(strlen($email)は文字のバイト数を数えている(1バイト=8ビッツ) //半角英数1文字1バイト・全角1文字3バイト //mb_strlen($email,'utf-8')で、全角・半角文字にかかわらず文字数を数えている //!=は『合致しなければ』の意味 if(strlen($email)!=mb_strlen($email,'utf-8')){ $email_error = 'Eメールに全角が含まれています'; $success = false; } if(mb_strlen($name,'utf-8')>20){ $name_error = 'お名前の入力文字数をオーバーしています'; $success = false; } if(mb_strlen($email,'utf-8')>25){ $email_error = 'メールアドレスの入力文字数をオーバーしています'; $success = false; } if(mb_strlen($message,'utf-8')>150){ $message_error = 'お問い合わせ内容の入力文字数をオーバーしています'; $success = false; } if(empty($name)){ $name_error= '名前が入力されていません'; $success = false; } if(empty($email)){ $email_error= 'メールアドレスが入力されていません'; $success = false; } if(empty($message)){ $message_error='お問い合せ内容が入力されていません'; $success = false; } $_SESSION['mail']['name']= $_POST['name']; $_SESSION['mail']['email']= $_POST['email']; $_SESSION['mail']['message']= $_POST['message']; $_SESSION['mail']['success']=$success; $_SESSION['mail']['name_error'] = $name_error; $_SESSION['mail']['email_error'] = $email_error; $_SESSION['mail']['message_error'] = $message_error; if(!$success){ header('Location:index.php'); exit; } ?> <!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="utf-8"> <title>お問い合わせ確認</title> <link rel="stylesheet" href="style_c.css"> </head> <body> <h1>お問い合わせ確認</h1> <table> <tr> <th>お名前:</th><td><?php echo h($name); ?></td> </tr> <tr> <th>Eメール:</th><td><?php echo h($email); ?></td> </tr> <tr> <th>お問い合わせ:</th><td><?php echo nl2br(h($message)); ?></td> </tr> </table> <button><a href="index.php">戻る</a></button> <button><a href="send.php">送信</a></button> </body> </html>