【发布时间】:2013-05-28 20:01:38
【问题描述】:
我有一个注销用户的脚本 (logout.php),它在 FF 和 IE 中运行良好,但在 Chrome 中,即使关闭浏览器,cookie 仍然可用。
我用这段代码测试过:
logout.php
session_start();
$_SESSION['un'] = '';
$_SESSION['pw'] = '';
unset($_SESSION['un']);
unset($_SESSION['pw']);
setcookie("spf", "", time()-3600);
session_destroy();
echo "Cookie: ".$_COOKIE['spf']."<br />";
echo "Session: ".$_SESSION['un'];
尽管如此,在 Chrome 中它仍会回显 spf 的内容。我做错了什么?
编辑:
在 FF 中,我的测试页回应了这一点:
Cookie:
Session:
(例如,两者都留空)。
在 Chrome 中它是这样说的:
Cookie: {\"un\":\"test3333\",\"pw\":\"593c114983263124656dd6bb922b7bd8\"}
Session:
(例如,cookie 有内容,会话为空白)。
【问题讨论】:
-
指定cookie路径,例如:setcookie('spf', '', time()-3600, '/')。
-
我不确定 Chrome 回显旧 cookie 值是什么意思,您的
echo语句回显 PHP 认为 cookie 值在它们到达 Chrome 之前是什么......?
标签: php google-chrome session cookies unset