如何解决ECSHOP购物车商品自动消失清空

更新时间:2016-07-01 点击量:1044



优易软件在做二次开发的时候碰到众多的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购物车商品自动消失清空的问题了。

是不是很好解决,更多的精品模板、实用性文章尽在优易软件









支付宝扫码打赏 微信打赏

如果文章对您有帮助,就打赏一个吧

在线客服

客户服务

热线电话:

0755-36656507 15889489919 服务时间:

周一到周六:9:00-18:00

在线QQ客服

在线微信客服

关于我们 常见问题

支付方式 加盟合作

提交需求
优惠红包 购物车0 反馈留言 返回顶部