1

我正在尝试通过 AJAX 直接使用 PHP 设置 cookie。下面的代码在 Firefox、Opera 和 Safari 中设置了 cookie,但在 Chrome 和 IE8 中却不行。

`setcookie( "user" , $_REQUEST[ 'login' ] , time() + 60 * 60 * 60 , "/graduate/" , "localhost" );`

我错过了什么,还是唯一的方法是通过 JavaScript?

PS 使用 JavaScript 在所有浏览器中设置 cookie。

4

1 回答 1

4

所以我猜你在本地主机上这样做?如果是这样,那是因为 google chrome 与 localhost 站点存在问题,而是使用 IP 地址来设置 cookie,更多信息在这里:http ://groups.google.com/a/googleproductforums.com/forum/#!category-topic /chrome/report-a-problem-and-get-troubleshooting-help/iow88FsnNhQ

对于 Internet Explorer,以下是 php 站点的摘录,应该可以解决您的问题:“Internet Explorer 8 和 Internet Explorer 9(IE8 和 IE9)仍然不接受来自 localhost 的 cookie。

解决这个问题的最简单方法是在您的主机文件中添加一个条目,例如 127.0.0.1 www.mytestsite.com"

这是链接: http: //php.net/manual/en/function.setcookie.php

另一个问题是有些浏览器不能正常工作,除非你指定setcookie的所有参数,你也试试

其他一些可能有帮助的链接: Internet Explorer 忽略某些域上的 cookie(无法读取或设置 cookie)

于 2012-04-16T03:21:27.683 回答