新闻中心

Ecshop如何修改动态ip地址登录后超时退出和购物车自动清空问题

作者 / 无忧主机 时间 2014-05-31 16:52:18

今天无忧主机的一个香港独立IP空间用户来咨询小编,为什么会员在家里登陆他的网站购物的时候,选中商品在购物车里自动就清空了。并且会员也自动退出了。会员开始担心自己的会员号被盗在另一处登陆了呢?于是就速度联系站长了。但是他也不明白什么原因。认为自己的网店出了眼中的漏洞呢。小编听过上述问题后分析了下程序明白了历史缘由。大家都知道我们在家里用的都是活IP,也就是每次联网的时候都是随机分配的Ip地址。不仅在家里就是学校办公场所用的也是随机分配的活IP地址,也就是动态Ip地址。只要下线重新联网Ip地址就会改变了。但是ECshop里面又有保存会员登陆和购物时用的session机制。因此我们修改为cookie机制即可解决这种会员登陆和购物车自动清空的问题。 第一小编首先解决登陆自动退出的问题:既然是登陆问题也就需要找到cookie所在的函数开启就可以了。函数所在的路径如下所示: 在includes/modules/integrates/integrate.php大概565行 找到function set_cookie函数。 function set_cookie($username='', $remember= null ) 把$remember= null修改为$remember= 1 就开启了session机制也就解决了动态Ip登陆超时自动退出的问题了。 第二我们来解决购物车自动清空的问题:购物车清空问题也是由于动态Ip的session机制导致。按照以下路径找到对应的目录路径 在根目录下includes\cls_session.php 大概在82行,找到以下代码注释掉://$this->_ip = real_ip(); 然后在这行代码下添加以下代码: if(isset($_COOKIE['real_ipd']) && !empty($_COOKIE['real_ipd'])){ $this->_ip = $_COOKIE['real_ipd']; }else{ $this->_ip = real_ip(); setcookie(“real_ipd”, $this->_ip, time()+36000, “/”); } 添加这行代码后按照以前的编码格式保存,然后再登陆网上后台更新缓存后我们就解决了以上两种动态Ip登陆自动退出和购物车清空的问题了。 无忧主机相关文章推荐阅读: ECSHOP中的相对地址如何修改为绝对地址 SHOPEX和ECSHOP哪个更适合做网店商城? ECSHOP二次开发如何删除留言板里的日期和时间 ECSHOP在后台会员列表中怎么显示会员最后的登录时间?

本文地址:https://www.51php.com/ecshop/14365.html

1
1
1
1
1
1
1