注销会话恢复后退按钮
这可能是一个误解。
当按下和按钮时,您很可能会在浏览器中看到页面的缓存版本。 不是表示您仍然登录。
尝试刷新上一页。它应该显示登录对话框。
如果要防止以这种方式显示页面,here是关闭浏览器缓存的一种方法。
如果您确实保持登录状态,则说明有问题。在这种情况下,我们需要看一些代码。
即使在清除缓存之后,在浏览器提示重新发送信息后,缓存也会恢复。 – user513458 2010-11-19 13:46:30
@user ah,但情况不同:然后,您的登录凭据实际上会重新发送。当您登录用户时(而不是直接显示内容),您可以通过将标题重定向到目标页面来解决该问题。 – 2010-11-19 13:47:23
是的,他应该使用重定向后事后模式来处理这 – 2010-11-19 13:52:07
session_destroy php man page为您的问题提供了一个快捷方便的解决方案。
是否有可能通过cookie删除登录数据,而无需在php中创建会话.. – user513458 2010-11-19 13:49:58
从评论中显示您的问题是,当您在浏览器上单击“返回”时,浏览器会提示您重新发送POST数据。当然,当你这样做时,你只需重新发送登录数据,从而立即将用户登录回去。避免烦人的浏览器提示重新发送POST数据并因此也避免重新登录用户的解决方案是使用“重定向后”模式。
让您的登录表单的POST目标成为其他页面 - 而不是您的登录欢迎页面或任何其他页面。该目标页面处理登录信息,授权,然后将重定向到欢迎页面(成功),或者如果验证失败,则返回到登录页面。
这样你将避免浏览器的提示,并且用户被重新登录。真的所有形式应该实施这种模式,因为它会导致更好的用户体验,并且避免了像你所经历过的一个陷阱。
请尝试以下代码: 退出按钮问题已恢复的会话已得到解决。
链接:
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
codingsolver.com链接看起来死了,并且现在有一些垃圾邮件。 – Jbecwar 2018-01-19 17:36:38
是什么让你觉得会得到恢复? – 2010-11-19 13:39:29
您确定要删除您的框架用于跟踪会话的任何会话cookie(与您设置的cookie相对)吗? – 2010-11-19 13:41:44