在magento我无法删除cookie

时间:2012-08-24 19:26:49

标签: php cookies magento-1.4

我正在运行PHP Magento 1.4.1.1,我正在存储一个包含用户首选项的cookie。

我用它来存储cookie。

umask(0);
Mage::app();
Mage::getModel('core/cookie')->set('lunch', 'user likes tuna fish', (60*60*24));

现在这可以保存cookie ...但如果我尝试更新或删除cookie,我看不到任何变化。

我尝试使用新数据设置cookie,如下所示:

umask(0);
Mage::app();
Mage::getModel('core/cookie')->set('lunch', 'user likes hamburgers', (60*60*24));

通常使用完全相同的名称,域和路径创建第二个cookie。

此外,如果我尝试删除而不是更改,我使用此:

umask(0);
Mage::app();
Mage::getModel('core/cookie')->delete('lunch');

没有更改cookie。

我也使用过这样的删除:

Mage::getModel('core/cookie')->delete('lunch', '/', 'www.domain.com');
Mage::getModel('core/cookie')->delete('lunch', '/', '.domain.com');
Mage::getModel('core/cookie')->delete('lunch', '/', 'domain.com');

也没有运气。

有什么想法吗?

仅供参考......我在根文件夹之外。

1 个答案:

答案 0 :(得分:0)

好的,在这一次我最终解决了自己......但是造成了这个问题。我在使用set时传递的变量未自行设置...发送NULL或FALSE。显然,如果这是FALSE或NULL

,Magento将不会设置cookie

所以再次解决方法是确保设置值。

Mage::getModel('core/cookie')->set('lunch', $SET_VALUE_HERE, (60*60*24));

此外,我似乎有更多的运气使用最后一个零来杀死cookie。

Mage::getModel('core/cookie')->set('lunch', $SET_VALUE_HERE, 0 );