setcookie
セッションでPHPを使用すると、ブラウザが開いている間はすべて正常に動作しますが、ブラウザを閉じると、$_SESSION
ページから別のページに渡すことができません! 私が持っているログインページで:
$_SESSION['name'] = $_POST['name'];
$_SESSION['pass'] = $_POST['pass'];
$life=2592000;//1 month
setcookie(session_name(),session_id(),time()+$life);
header("location:administrator/");
die();
session_start();
それらの上にあるすべてのページで使用しました。また、ログアウトに次のコードを使用しました。
session_start();
unset($_SESSION['name']);
unset($_SESSION['pass']);
session_destroy();
header("location:../");
重要な注意点は、ブラウザーの Cookie を確認したときです。ブラウザーを閉じる前に 2 つの Cookie があり、それらのコンテンツの値は互いにまったく同じです。1 つはセッションの終了時に期限切れになりますが、もう 1 つは 1 か月後に期限切れになります。ブラウザーを閉じて戻ります。2 つの Cookie がありますが、値が異なります。ケースの問題とセッション変数がページからページに渡されないと思います。