新闻中心

Ecshop教程:登录操作时自动退出

作者 / 无忧主机 时间 2015-08-11 17:01:00

最近有个用户把ecshop进行过二次开发,可以说是碰到了很多问题,最让人苦恼的是ecshop会员登录和管理员登录后,会自动退出,或者是有部分会员在操作购物时会自动清空等情况。据用户自己反应,这种情况自己在本地用ecshop搭建了一个商务系统,本地测试是好好的一切正常,一旦上传到php空间就不行了。随便点击点击就无故退出,感觉session被清空了。询问用户的所有可能的一些操作,了解到自己的IP是动态的,也有过使用代理,因此IP常常变化。经过网上搜索,找到有关于ecshop session的相关文档,原来ecshop中是通过IP地址来验证的,尽管 ecshop的session机制是一个不错的解决方案,但也有一些瑕疵因此,IP经常变换,因此也就出现了用户所描述的情况。 对此相应的解决方法也就有了,找到ecshop空间根目录下的文件includes\cls_session.php 找到如下这段代码

return sprintf('%08x', crc32(!empty($_SERVER['HTTP_USER_AGENT'])? $_SERVER['HTTP_USER_AGENT'] . ROOT_PATH . $ip . $session_id : ROOT_PATH . $ip . $session_id));
将其替换成如下代码:
return sprintf('%08x', crc32(ROOT_PATH . $ip . $session_id));
这么一来,登录恢复正常,不会出现自动退出了。 无忧主机相关文章推荐阅读: 如何使ECSHOP缩略图生成方式设定成按比例裁切 ECSHOP教程:实现其他网站程序外部调用ECSHOP商品 ECSHOP教程:提示信息:XMLHTTPREQUEST STATUS :[12029] UNKNOW解决办法

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