我有一个网页,根据是否设置了cookie来显示登录表单。如果用户登录,数据将发送到登录脚本,该脚本设置cookie并将用户返回到原始页面。问题是,由于某种原因,尽管cookie被正确设置(或在注销的情况下被删除),页面仍继续显示旧内容。页面需要刷新才能实际显示正确的信息。这是怎么回事?
我的登录脚本有效地执行此操作:
setcookie("my_cookie",$userID, time()+3600*24*356, "/");
我的页面检查了这一点:
if (!isset($_COOKIE["my_cookie"]))
在页面的最顶部。
感谢您的帮助。
为此使用会话。会话在不刷新的情况下存储。
当您设置 cookie
时,服务器将标头发送到浏览器以设置 cookie(这就是为什么您在发送任何数据后无法设置 cookie 的原因 - 标头必须是第一个)。当浏览器发送页面请求时,发送请求标头中的所有cookie。