2009-12-10 56 views
0

我已经创建了一个cookie:如何在Firefox中删除cookie?

$domain = ($_SERVER['HTTP_HOST'] != 'localhost') ? $_SERVER['HTTP_HOST'] : false; 
setcookie('cookiename', 'data', time()+60*60*24*365, '/', $domain, false); 

但我怎么删除呢?

我试着只是把+切换到 - 但它没有工作。

$domain = ($_SERVER['HTTP_HOST'] != 'localhost') ? $_SERVER['HTTP_HOST'] : false; 
setcookie('cookiename', 'data', time()-60*60*24*365, '/', $domain, false); 
+0

什么是服务器和客户端的时区?另外,它在IE中工作吗? – SLaks 2009-12-10 00:15:12

+0

@SLaks:如果我没有错,Cookies是基于客户端机器的时间。 – Nirmal 2009-12-10 00:19:34

+1

它在safari中工作,但不是在Firefox中...其他人也有问题...他们说我必须设置所有参数...但我不能创建它,如果我添加最后2个...只是在开始的3个 – 2009-12-10 00:25:51

回答

2
setcookie('fayer', FALSE, 1); 

,并确保使用您在创建的cookie所使用的相同PARAMATERS。 如果您已将Cookie限制到域中,则必须在删除cookie时提及。

仅当参数匹配时,浏览器才会删除cookie。

例如,如果你创建了这样的饼干:

setcookie('fayer', "some value", time()+24600, "/", "www.fayer.com", 0); 

必须删除cookie这样:

setcookie('fayer', FALSE, 1, "/", "www.fayer.com", 0); 
+0

nope..doesnt work!:(有什么问题吗 – 2009-12-10 00:13:16

+0

请看我更新的回答。 – Nirmal 2009-12-10 00:16:11

+0

请看我更新的答案=) – 2009-12-10 00:29:42