1

在我的注册脚本结束时,我设置了一个 'loggedin' 的 cookie,如下所示

setcookie("登录", $username, time()+60*60*24*30 );

然后只需重定向回主页。

我正在尝试回显该 cookie 的内容。当我右键单击 > 页面信息 > 安全性 > 查看 cookie 时,我可以看到它已创建。

cookie 的名称在那里,“登录”,内容设置为我注册的用户名。但是当我做类似的事情时

print_r ($_COOKIE);

什么都没有显示。

做一个

var_dump($_COOKIE);

array (size=0)
  empty

如果按照前面提到的步骤可以看到 cookie 确实存在,为什么会发生这种行为?

4

2 回答 2

1

通常可能是因为您没有设置域/路径项。尝试使用:

setcookie("loggedin", $username, time()+60*60*24*30, '/', $domain);
于 2013-01-20T23:02:36.450 回答
0

您应该在任何输出之前存储 cookie

因为 cookie 包含在 http 标头中,所以如果您开始输出 html 页面并在此之后存储 cookie - 将不会存储任何内容

于 2013-01-20T23:11:19.193 回答