我有一个简单的登录设置,我使用 cookie 来存储登录 ID #,并使用此 ID,可以显示用户名和其他信息。
因此,为了注销,我运行以下 php 脚本来注销:
<?php
if (isset($_COOKIE['id'])) {
setcookie("id","",1);
}
header("Location: redirectpage.html");
exit;
?>
这基本上使cookie过期。但是,当我到达重定向页面时,该页面具有以下代码:
If (isset($_COOKIE['id'])) {
//display "You are logged in already"
} else {
// show login form
}
它说我仍然登录,移动到不同的页面仍然说我已经登录,并且显示 cookie 值给了我一个实际值,这意味着 cookie 没有过期。我一定在这里遗漏了一些东西,但为什么 cookie 没有过期?
注意:我将过期日期从 time()-60 或某个值更改为 1,但这并没有改变任何内容,并且删除 if 语句以在每次 php 代码运行时使 cookie 过期仍然不能解决问题。