我正在运行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');
也没有运气。
有什么想法吗?
仅供参考......我在根文件夹之外。
答案 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 );