2011-12-29 85 views
0

工作,我有一个Ajax调用,这是否:PHP的setcookie不是虚拟目录

if(!isset($_COOKIE['T1'])) 
    { 
     $expire = 60 * 60 * 24 * 3650 + time(); //10 years 
    setcookie('T1', 'Y', $expire, '/', false); 
    echo 'a'; 
    } 

    echo $_COOKIE['T1']; 

上面这段代码运行正常。通过它的第一次回声的'a',当cookie被设置,并且下一次它不会在输出'Y'的cookie变量。所有这些都在一个页面中完成。

但我有另一个页面,其中我输出$ _COOKIE ['T1'];它是空的。

我有我的网站在我自己的机器上运行,并设置了Windows/Apache主机文件,以便我的127.0.0.1主机是myexample.com。

为什么它仍然在其他页面上工作?

回答

0

这将工作

setcookie('T1', 'Y', $expire, '/'); 

参考PHP手册http://php.net/manual/en/function.setcookie.php

+0

依然虚无缥缈......不知道为什么它不工作 – cdub 2011-12-29 12:07:33

+0

没关系,......显然你不能有一个“/”在您的Cookie密钥中,该密钥在设置cookie的页面上工作,但不在其他任何地方 – cdub 2011-12-29 12:20:00