在我的预prestashop中,用户(不是客户端或管理员)可以创建一个“侧”帐户(不是预存储帐户),以便在站点上做一些特殊的事情。
我已经创建了所有这些内容,但是当用户连接时,我无法在会话期间保存数据。
我已经找到了一种保存数据的方法,我唯一看到的就是智能cookie。好吧,但我不能控制那块饼干的一生。当用户关闭浏览器时,我需要这个cookie死掉。
所以我试着做了一次治疗,但我无法让它开始工作,我也没有办法做一个不能持久的曲奇。
有人想要像数据这样的会话,或者处理cookie的生存期吗?
谢谢
发布于 2014-11-12 12:45:51
您可以使用CookieCore类
//to write
$cookie = new Cookie('my_cookie'); //make your own cookie
$cookie->setExpire(time() + 20 * 60); // 20 minutes for example
$cookie->variable_name = 'hello';
$cookie->write();
//to read
$cookie = new Cookie('my_cookie');
echo $cookie->variable_name;
//hello发布于 2014-11-13 00:04:27
我要加入UnLoCo的信息。
对于正在寻找在会话结束时死去的cookie的人,只需将
$cookie->setExpire(0);只有当浏览器完全关闭时,cookie才会死(我有一个扩展,让浏览器打开,所以我认为有一个bug)。
最后一件事如果你想亲手杀了饼干
$cookie = new Cookie('my_cookie');
$cookie->variable_name = null;
$cookie->write();发布于 2015-11-25 05:21:09
试用Prestashop 1.6.1.x
http://vblanch.com/get-the-contact-email-in-prestashop-shop-name-and-set-values-in-cookies/修正较少的原始帖子
如果您还需要将值放入cookie中:
$this->context->cookie->__set('name_of_your_key', $your_value);要从智能模板(.tpl)获取值,请执行以下操作:
{$cookie->name_of_your_key}来自PHP (在控制器中):
$this->context->cookie->name_of_your_key在控制器之外:
$context = Context::getContext();
$context->cookie->name_of_your_key;https://stackoverflow.com/questions/26841046
复制相似问题