如何在PHP中设置cookie?

时间:2010-07-21 01:23:01

标签: php cookies

我设置了一个cookie,然后检查是否存在这样的

if(isset($_COOKIE["fan"]))
{
//Do Nothing
}
else
{
$cookie = "yes";
$expire=time()+60*60*24*30;
setcookie("fan", $cookie, $expire);
include_once("../inc/functions.php");
echo fan_page();    
}

当我在本地计算机上测试时,它可以工作,但是当我上传到生产服务器时,它不起作用。

我做错了什么?

提前致谢!

马克

2 个答案:

答案 0 :(得分:2)

您可能需要为Cookie设置域名。在本地它默认,但在生产中,如果没有明确设置,你可能会遇到一些问题。

查看setcookie的参数; http://www.php.net/manual/en/function.setcookie.php

我还建议您在浏览器缓存中查看是否正在设置。

答案 1 :(得分:0)

为一个路径/主机名设置的cookie可能会覆盖另一个路径/主机名的cookie集,即使它是较新的。

例如,如果已经为“www.example.com”设置了cookie并且您为“example.com”设置了一个cookie,那么当您回读相同的cookie时,您将获得为“www.example.com”设置的cookie。 www.example.com”。

尝试为更具体的主机名设置cookie。

这可能是问题的一部分。