如何解决ECSHOP购物车商品自动消失清空
更新时间:2016-07-01 点击量:2117
Tag关键词: 购物车 自动 ecshop模板 ecshop4.0模板 二次开发 ecshop3.6模板 ecshop小程序
优易软件在做二次开发的时候碰到众多的ecshop用户,反映关于ecshop购物车的问题:需要加入多个商品到购物车时,发现之前加入到购物车的商品都自动消失了,只有最后一次加入购物车的商品在里面。
在与ecshop用户沟通以及查询资料,发现出现ECSHOP购物车商品自动消失清空这样的情况是因为ECShop的SESSION采用IP生成用户唯一码,这样一来,多线接入的用户在路由自动切换时就会造成IP变化,这样,SESSION也就丢失了,与SESSION相关的登陆、购物车也就失效了。
下面优易软件就关于这个问题的解决方法整理出来 ,供各位ecshop用户参考
解决办法有两种:
1、当用户第一次登陆时,将用户的IP存入Cookie
2、在生成SESSION时,不取IP,而是在用户的机器存一个加密的Cookie。
第一种方法相对较简单,这里讲一下具体操作步骤
只需要修改ECShop根目录下includes\cls_session.php 大概在82行,找到以下代码:
$this->_ip = real_ip();
修改为:
if(isset($_COOKIE['real_ipd']) && !emptyempty($_COOKIE['real_ipd'])){ $this->_ip = $_COOKIE['real_ipd']; }else{ $this->_ip = real_ip(); setcookie("real_ipd", $this->_ip, time()+36000, "/"); }
按照以上的两点来进行修改,就能解决ECSHOP购物车商品自动消失清空的问题了。
如果文章对您有帮助,就打赏一个吧
«上一篇:ECSHOP商城页面显示指定分类、数量、排序的任意类型文章,以及只显示置顶文章 下一篇:如何实现ECSHOP商品详情页面显示购买记录»