$ _COOKIE未使用方法setcookie()设置路径'/'

时间:2013-06-09 00:51:14

标签: php cookies

好的,所以我现在很困惑,为什么当路径设置为'/'时我的$_COOKIE没有设置,但是另外设置了。因为它目前代表这个代码

setcookie("scauth", $cookie_content,  time()+60*60, "/", $_SERVER["HTTP_HOST"]);

返回错误Undefined index: scauth in C:\xampp\htdocs\pnp_site\media\zoo\elements\supercontact\send.php on line 19,但如果我删除了pathdomain的两个参数,并运行此代码,例如..

setcookie("scauth", $cookie_content,  time()+60*60);

cookie将按预期实例化。这让我感到困惑,因为我根据setcookie()文档对$path参数的理解明确指出'/'设置路径下的任何内容都可以在整个域(但由于某种原因,它不是)。

  

可在其上使用cookie的服务器上的路径。 如果设置为'/',则Cookie将在整个域中提供。

有关为何发生这种情况的任何想法?我正在运行Windows 7 ApacheFriends XAMPP Version 1.8测试环境。

1 个答案:

答案 0 :(得分:0)

尝试使用带引号的字符串版本替换$ _SERVER [“HTTP_HOST”]。这将告诉您此信息的格式是否正确。

使用print_r($ _ SERVER [“HTTP_HOST”]),并查看页面的来源以便更容易阅读。

通常不需要提供域名。

如果在本地测试,某些浏览器会限制本地文件访问,而HTTP_HOST的格式可能不正确。