1

我有一个网页显示登录表单,具体取决于是否设置了 cookie。如果用户登录,数据将发送到登录脚本,该脚本设置 cookie 并将用户返回到原始页面。问题是,由于某种原因,尽管 cookie 设置正确(或在注销的情况下被删除),页面仍继续显示旧内容。页面需要刷新才能实际显示正确的信息。这是怎么回事?

我的登录脚本有效地做到了这一点:

setcookie("my_cookie",$userID, time()+3600*24*356, "/");

我的页面对此进行了检查:

if (!isset($_COOKIE["my_cookie"]))

在页面的最顶部。

谢谢您的帮助。

4

2 回答 2

0

当您设置 cookie 时,服务器将 header 发送到浏览器以设置 cookie(这就是为什么您无法在发送任何数据后设置 cookie - header 必须是第一个)。当浏览器发送页面请求时,在请求标头中发送所有 cookie。

于 2013-09-12T16:00:54.333 回答
0

为此使用会话。会话存储而无需刷新。

于 2013-09-12T15:52:12.157 回答