0

好的,所以我现在很困惑,为什么$_COOKIE当路径设置为时 my 没有被设置'/',但在其他情况下被设置。就目前而言,此代码

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,但如果我删除了 and 的两个参数pathdomain并运行此代码,例如..

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

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

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

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

4

1 回答 1

0

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

也可以使用 print_r($_SERVER["HTTP_HOST"]) ,并查看页面的源代码以更轻松地阅读它。

通常不需要提供域。

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

于 2013-06-09T01:00:50.407 回答