gpt4 book ai didi

php - 点击后退按钮重新加载页面

转载 作者:可可西里 更新时间:2023-11-01 12:27:29 24 4
gpt4 key购买 nike

我有一个需要登录的网页。一旦用户登录,我就开始 session ,一旦他注销,我就销毁它,但是当我按下后退页面时,它会再次给我用户配置文件页面,理想情况下不应该出现这种情况,因为用户已经注销。但是,如果我在注销后重新加载页面,它会正常工作。

这是一个本地聊天室,在线和登录的每个人都可以在这里聊天。共有三个页面:login.phpauth.phplogout.php

login.php 是包含表单的常见登录页面。 auth.php 有一个 div 显示到目前为止所有以前的聊天记录,一个文本框和共享按钮,点击它会再次将表单发送到 auth.php 所以每次表单都是发布的聊天帖子被发送到数据库,并且身份验证被重新加载到聊天 div 中的最新数据库..

现在的问题是,一旦我注销,我就会取消设置所有变量并破坏 session ,但即便如此,如果我在浏览器 (Safari) 中点击后退按钮,以前版本的 auth.php 没有最后的聊天条目是可见的,理想情况下不应该因为 session 被破坏。我在 auth.php 中放置了一个 session 验证,所以基本上我希望 auth.php 重新加载用户在注销后访问它作为重新加载 auth。 php 显示“您尚未登录”

我试过了

<?php header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
and
<head>
<meta http-equiv='Pragma' content='no-cache'>
<meta http-equiv='Expires' content='-1'>
</head>

抱歉这个冗长的问题,但我真的需要这方面的帮助。

最佳答案

header("Expires: Thu, 19 Nov 1981 08:52:00 GMT"); //Date in the past
header("Cache-Control: no-store, no-cache, must-revalidate"); //HTTP/1.1

这对我适用于 FF3.6、IE7、IE8、Chrome5(当点击浏览器的后退/前进按钮时,页面总是重新加载)

另一种解决方案是发送与 session_start() 函数发送的完全相同的 header ,与上面的非常相似,但更丰富:

header("Expires: Thu, 19 Nov 1981 08:52:00 GMT"); //Date in the past
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); //HTTP/1.1
header("Pragma: no-cache");

注意:此处显示的顺序与session_start()发送的顺序相同(您可以使用 HttpFox 插件进行测试对于 FF)

关于php - 点击后退按钮重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3645609/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com