我有一个小网站使用会话来检查用户登录。
当用户点击注销时,会被重定向到仅包含会话销毁的页面。
代码如下:
<?php
session_start();
if(session_destroy()) {
$_SESSION = array();
header("Location: http://domain.com/");
}
exit();
?>
我试图删除if语句以在销毁会话时检查是否存在任何问题。
我甚至使用了unset并将数组设置为空。
当重定向到域主页时,用户仍然登录并且会话仍然设置。
此外,我试图取消特定的会话,但仍然没有任何反应。
- 更新: 会话甚至不作为空值返回。注销后回显会话仍会返回用户名的值。
答案 0 :(得分:0)
这个答案应该有所帮助。正如Roland Starke在评论中提到的那样,session_destroy不会删除cookie。
答案 1 :(得分:0)
试试这个。
<?php
session_start();
if(session_destroy()) {
echo '<meta http-equiv="refresh" content="0;URL=http://domain.com">';
}
exit();
?>
我认为标题在你的这种特殊情况下会引发错误。嗯......(标题已发送)......