求救cookie的问题

#1 peter

调用了speedphp框架后,setcookie('TestCookie',time(),time()+86400,'/'); 设置不了,没有用。
单独的php页面就可以设置。
并且可以读取到$_cookie['TestCookie']。
求救,这咋回事。

2011-06-24 20:46:16

#2 peter

而且我是分2个页面看的。
一个单独的页面test.php没调用speedphp框架,直接:var_dump($_COOKIE);

2011-06-24 21:05:39

#3 jake

在setcookie的前面加上 ob_clean();ob_start(); 应该就可以了。

这里表明了,你的程序里面有UTF8-BOM的问题,或者是在setcookie前有header或空格的输出,这样才会导致cookie失效。BOM问题在手册里面有说明,可以使用那个去除bom的程序去除一下BOM(这东西对程序许多地方都有影响)。

2011-06-25 00:13:44

#4 peter

谢谢jake,已经解决了,确实是在setcookie有输出。是被调用文件 publicFun.php 里面 有个 “?>”结尾,就是这个输出来了,所以造成cookie失效。

2011-06-25 10:31:46

#5 Clear

jake 发表于 2011-6-25 00:13
在setcookie的前面加上 ob_clean();ob_start(); 应该就可以了。

这里表明了,你的程序里面有UTF8-BOM的问 ...
jake你好:
   我这边遇到一个cookie的问题
   我在一个controller中设置了一个cookie的值,这个值在本controller中可以使用,但是在其他的controller中不能够使用。求解释...

2012-07-16 17:09:04

#6 jake

Clear 发表于 2012-7-16 17:09
jake你好:
   我这边遇到一个cookie的问题
   我在一个controller中设置了一个cookie的值,这个值在本co ...
解释什么?

建议你看帖子或者看手册,如果都当看不见,那谁也帮不了你。

另外,setcookie是PHP函数,如果觉得有问题,可以到php.net上面提!

2012-07-16 18:29:51