好的,所以我现在很困惑,为什么当路径设置为'/'
时我的$_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
,但如果我删除了path
和domain
的两个参数,并运行此代码,例如..
setcookie("scauth", $cookie_content, time()+60*60);
cookie将按预期实例化。这让我感到困惑,因为我根据setcookie()
文档对$path
参数的理解明确指出'/'
设置路径下的任何内容都可以在整个域(但由于某种原因,它不是)。
可在其上使用cookie的服务器上的路径。 如果设置为'/',则Cookie将在整个域中提供。
有关为何发生这种情况的任何想法?我正在运行Windows 7 ApacheFriends XAMPP Version 1.8
测试环境。
答案 0 :(得分:0)
尝试使用带引号的字符串版本替换$ _SERVER [“HTTP_HOST”]。这将告诉您此信息的格式是否正确。
使用print_r($ _ SERVER [“HTTP_HOST”]),并查看页面的来源以便更容易阅读。
通常不需要提供域名。
如果在本地测试,某些浏览器会限制本地文件访问,而HTTP_HOST的格式可能不正确。