我在尝试销毁会话时遇到问题 它们似乎被摧毁了,
但如果单击后退按钮,变量将返回,因为应隐藏的页面区域变为 再次可见,
该网站的这一部分用于管理 网站的前部也有登录但不会发生
管理部分的索引页面在一个子文件夹中,我有一个名为notLoggedIn.php的文件,我包含在我要锁定管理员的页面上,notLoggedIn.php测试是否存在在loggin上设置的会话
当我退出时,单击后退按钮这实际上有效,它将我重定向回管理员索引,但现在它再次显示我的用户名然后我无法重新登录???
我试过
$_SESSION = array()
if (isset($_COOKIES[session_name()])) {
$params = session_get_cookie_params();
setcookie(session_name(), '', 1, $params['path'], $params['domain'], $params['secure'], isset($params['httponly']));
}
session_destroy()
按名称取消会话
正如我所说,这不会发生在网站的其他部分......任何建议?
答案 0 :(得分:1)
刷新页面时是否会发生这种情况?我的第一个就是你看到浏览器缓存的页面。尝试在用户登录时/之后将其添加到您的页面:
header('Cache-Control: no-cache, no-store, must-revalidate');
答案 1 :(得分:1)
有时问题是在调用session_start()
之前忘记了session_destroy()
。
答案 2 :(得分:0)
浏览器可以缓存整个页面的html,只显示来自本地内存的页面,甚至没有发送请求,更不用说在服务器上执行php脚本了。
它是关于缓存的,它受到请求类型(GET / POST)的影响。
答案 3 :(得分:0)
感谢您的时间,但似乎这是一个WAMP问题 到目前为止,一旦我使用了MAMP或上传,这个问题就没有出现过了。
再次感谢