私はphpフォームを持っていて、次からリダイレクトしています:
http://wthdesign.net/contact.php
この URL に:
http://wthdesign.net/contact.php?status=thanks
私のフォームが送信されたら:
しかし、私の問題は、フォームが最初に送信されなかった場合に、この URL へのアクセスをどのように防止するかです。
私はphpフォームを持っていて、次からリダイレクトしています:
http://wthdesign.net/contact.php
この URL に:
http://wthdesign.net/contact.php?status=thanks
私のフォームが送信されたら:
しかし、私の問題は、フォームが最初に送信されなかった場合に、この URL へのアクセスをどのように防止するかです。
フォームでセッションを作成するだけで、セッションが isset 関数で設定されているかどうかを確認する必要があります。そうでない場合は、最初にダイを使用します。
if (!isset($_SESSION['thank'])) die;
contact.php のソースコードを見せてください
実際、SESSION はおそらく最善の方法であり、セッションをこのように設定します。
if (mail(...)) {
$_SESSION['allow_show_thanks'] = 1;
}
ステータスを処理するためのある種のスイッチケースがありますか?
if (status == "thanks") {
} else {
// show form
}
それをに変更します
if (status == "thanks" && (isset($_SESSION['allow_show_thanks'] && $_SESSION['allow_show_thanks'] == 1) ) {
// show thanks when status equals "thanks" AND SESSION['allow_show_thanks'] == 1
} else {
// show form
}