我有一个我正在维护的 PHP 网站,并且我已经确认这在某一时刻有效。
我们有一个使用登录系统的网站,该系统将登录用户的信息存储在一个$_SESSION['user']
变量中。该站点用于在单击/logout.php时注销用户,这实际上删除了会话的该部分,然后header()
重定向到主页。
截至最近,顶部的/logout.php文件在用于输出它以进行调试session_start()
时以某种方式看不到会话信息。print_r()
如果我转到另一个页面,我可以很好地看到会话信息,但在注销页面上看不到......这正是我无法删除会话信息的原因,因为它无法访问。
在浏览器关闭之前,我认为$_SESSION
该网站是全球性的。我从来没有发生过这种情况,我知道会话实例是在这个页面上启动的,所以很奇怪它没有向我显示会话数据。
有任何想法吗?我完全被这个难住了!
代码:/logout.php
<?
#session_start() is inside this file
require_once($_SERVER['DOCUMENT_ROOT'].'/includes/config.php');
unset($_SESSION['user']);
header("location: /");
exit();
?>
检查$_SESSION['user']
是整个站点的,当需要不同的事情时,我会调用它下面的各种项目。其他人建立了这个网站,我正在尝试调试为什么它突然对他们不起作用。