私は持っている
<?php ob_start(); ?>
<?php
$rng2 = random_string('alnum', 24);
setcookie("rng2", md5($rng2), time()+7200, '/');
?>
私のページの最初の5行として。<?php ob_end_flush(); ?>
ページの最後にあります。
また、ページのリロード後に次の行でCookieの値を確認しています
print_r($_COOKIE);
echo "<br /><br />".$_COOKIE['rng2']."/cookie[rng2]<br />";
echo $_POST['f']."/post[f]<br />";
echo md5($_POST['f'])."/md5(post[f])<br />";
if($_COOKIE['rng2'] != md5($_POST['f'])){
$err .= "There was an error submitting the form.<br />";
}
Cookie ['rng2'] が print_r() に表示されず、変数 $_COOKIE['rng2'] が 2 つの「/」の間にスペースを表示しない場合、$_POST['f'] が正しく表示されます。
私はこれを機能させることができないようです。Cookieが設定されているページがインクルードされているかどうかを問題にすることについて、オンラインで何も見つけることができませんが、それについて言及したいと思います。
どんな洞察も役に立ちます。ありがとうございました。