WEB制作の備忘録|朧なる足痕

メールフォーム実習10:送信ページ

送信ページを整える

  1. h1、pを記述
  2. check.phpからtableタグ内をコピー&ペースト
  3. check.phpからユーザー定義関数をコピー&ペースト
  4. トップへ戻るリンクを追加
  5. トップへ戻ると表示されている値を消す

【send.php

<?php
function h($str){
  return htmlspecialchars($str,ENT_QUOTES,'utf-8');
}

session_start();

if(!$_SESSION['success']){
  header('Location:index.php');
  exit;
}

$name = $_SESSION['name'];
$email = $_SESSION['email'];
$message = $_SESSION['message'];

$_SESSION = array();

mb_send_mail('XXX@XXX.XXX','お問い合わせメール',$name.$email.$message);
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>メール送信終了</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<h1>メール送信終了</h1>
<p>以下の内容でメールが送信されました</p>
<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>
<p><a href="index.php">トップに戻る</a></p>
</body>
</html>

ポイント

title、h1、pを記述
<title>メール送信終了</title>
…省略…
<h1>メール送信終了</h1>
<p>以下の内容でメールが送信されました</p>
check.phpからtableタグ内をコピー&ペースト
<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>
check.phpからユーザー定義関数をコピー&ペースト
function h($str){
  return htmlspecialchars($str,ENT_QUOTES,'utf-8');
}
トップへ戻るリンクを追加
<p><a href="index.php">トップに戻る</a></p>
トップへ戻ると表示されている値を消す
  • 現状は、トップへ戻るをクリックするとユーザーが入力した値が残っている状態です
  • このページはデータ送信完了のお知らせページです
  • ユーザーがトップへ戻るときは、入力したデータを再利用する可能性がないのでデータを消します
$_SESSION = array();
  • セッションファイルの配列を初期化=セッションの値を消す