使用PHP的cookie

时间:2010-07-30 02:31:35

标签: php cookies setcookie

我只是想设置和使用cookie,但我似乎无法存储任何东西。

登录时,我使用:

setcookie("username", $user);

但是,当我使用Firefox和Web Developer插件Cookies时 - >查看Cookie信息没有用户名cookie。

此外,当我尝试使用

访问后续页面中的值时

$_COOKIE["username"]

返回null / empty

var_dump(setcookie("username", $user)); 结果:bool(true)

var_dump($_COOKIE) 结果:特定的cookie不存在(其他人在那里)

我做了更多测试......

cookie在登录后存在(第一页),但是当我去另一个(第二页)时它就消失了,并且好了......

是否有任何标题必须存在或不存在?

5 个答案:

答案 0 :(得分:1)

http://php.net/manual/en/function.setcookie.php

尝试将$ expire参数设置为将来的某个点。我相信它默认为0,这是在遥远的过去。

答案 1 :(得分:1)

请确保在登录后转到其他页面后URL正在更改时正确设置域参数。您可以在http://php.net/manual/en/function.setcookie.php

上详细了解域参数

答案 2 :(得分:0)

Cookie可能已过期,因为自{1}}以来默认为Unix纪元以来的0秒。 (docs

尝试

$expire

在设定后20分钟到期(根据客户的时间)。

答案 3 :(得分:0)

在setcookie(..)上使用var_dump()来查看返回的内容。也可以对$ _COOKIE执行相同的操作,以查看是否设置了密钥。

答案 4 :(得分:0)

感谢大家的反馈... Aditya引导我进一步分析cookie,我发现路径是问题......

登录路径是/ admin /然后我重定向回根...

感谢大家的帮助和反馈!