PCゲーマーのWebデザイン備忘録

PCゲーマーのWebデザインの勉強と備忘録。Webサイト制作系の職業訓練を受けてます。

【PHP】 メールフォームを作る⑦

引き続きメールフォームを作っていきます。今回も引き続きセキュリティ面を強化していきます。
今回は、index.php にデータが入力された時以外に、check.php、thanks.php に直接アクセスできないようにします。


直接アクセスできないように、index.php に飛ばす。

check.php:

以下でやったように、指定していします。
【PHP】 メールフォームの作り方③ - PCゲーマーのWebデザイン備忘録

 

if(empty($_POST)){
  header('Location:http://localhost/mail/index.php');
  exit;
}


 
thanks.php:

isset を使い、変数の中に価が入っているか確かめ、それでフォームからのデータかを判定します。
ここでは $error を使っていますが、$error を使うことで、エラーがあるのにもかかわらずメールが送信されてしまうことも防ぎます。

 

if(!isset($_SESSION['error'])|| $_SESSION['error']!=false){
  header('Location:http://localhost/mail/index.php');
  exit;
}

 
上の php の意味としては
「もし、セッションファイルのエラーの中身が入っていないなら、また、エラーが真でないなら、index.php に飛ばします」と言う意味になります。