「ログインしたままにする」オプションがあるサイトがあります。オプションをチェックすると、私はそうのような1ヶ月のクッキーを設定します。PHPクッキーは削除されません!
$expire = time()+60*60*24*30;
setcookie("user_ID", $userid, $expire);
setcookie("u", $username, $expire);
etc.
それから私は、過去に日一時間をゼロにし、期限切れに値を設定し、クッキーを殺すためにログアウトスクリプトを持っています。
$expire2 = time()-60*60;
foreach ($_COOKIE as $c_id => $c_value)
{
setcookie($c_id, NULL, $expire2);
}
私はログアウト・スクリプトを実行すると、Firebugのは、この意見:
のSet-Cookie のuserID =削除されました。 expires = Tue、02-Feb-2010 16:43:15 GMT u =削除済み。有効期限= 2010年2月2日16:43:15 GMT
しかし、メインページや他のページに戻ると、まだログインしています。私がクッキーを設定する唯一の時間は、私がログインスクリプトを実行するときです。なぜ彼らは死なないでしょうか? GMTの後ろにある現地時間と何か関係がありますか?
認証を維持するために$ _SESSIONベースのCookieを使用していますか? –
あなたの認証はどのように機能しますか?あなたのクッキーに何が起こったのかを確認しましたか? – Gumbo