【问题标题】:Con't able to find cookie value in prestashop Context::getContext()->cookie but it is show in $_COOKIE?无法在 prestashop Context::getContext()->cookie 中找到 cookie 值,但它显示在 $_COOKIE 中?
【发布时间】:2019-03-28 05:47:30
【问题描述】:
我正在创建一个使用第三方 Js 的模块。该JS在浏览器中创建一个cookie。在后端,我想借助 prestashop cookie 类 (Context::getContext()->cookie / $this->context->cookie) 读取该 cookie,但无法找到该 cookie 值,如果我使用 php default $_COOKIE 它工作正常。
例如:我的 cookie 键是 xyz,值是 123456abc。
当我使用 print_r($_COOKIE) 它打印 [xyz]= "123456abc"
但是当我使用prestashop Cookie 时,它不会打印任何东西。
【问题讨论】:
标签:
php
prestashop
smarty
prestashop-1.6
prestashop-1.7
【解决方案1】:
这是因为您很可能会写入具有不同名称或不同域/子域的 cookie。
PrestaShop 管理员 cookie 名称是 psAdmin 而前端的是 ps-s1。
使用 Google Chrome,按 F12 并转到:Applications > Cookies > www.yourstore.com
您现在应该看到所有不同的 cookie 名称和值,确保您输入的是正确的。
另一种解决方案是直接从 JS(使用 Ajax)调用 PrestaShop 控制器文件,以通过 PHP 设置 cookie 值。