ecs_cart表在ecshop ecs cart里 什么时候清空的?

让ecshop购物车不自动清空的方法_ecshop模板网
ecshop模板制作二次开发插件教程网
共363套模板插件、1920篇文章教程
& 让ecshop购物车不自动清空的方法
让ecshop购物车不自动清空的方法
ecshop模板网
&ECSHOP的程序的购物车会自动清空,而且有多个清空设置,防不胜防:
1、当用户的IP变化后,购物车自动清空;
2、当浏览器关闭后,购物车自动清空;
3、当用户退出登陆后,购物车自动清空;
4、管理员在后台登陆后,购物车自动清空。
几乎可以说,不管是不是会员、不管有没有登陆,购物车的数据是不保留的,甚至管理员登陆后台都会把购物车清空一次,似乎ECSHOP对购物车有刻骨之仇,分分钟要把购物车的数据清理掉。这给会员的体验就很差。很多会员反映:花了一下午时间挑好商品,准备第二天再下单,结果第二天一看,购物车里什么也没有了。
想保留会员的购物车,需要修改程序。网络上给出了很多种修改方案,但都不全面,购物车依然会被清空。只有把程序中所有清空代码都修改掉,才起作用。
1、限制购物车仅登陆后使用,以免未登陆使用购物车后数据被清空。
flow.php找到
if ($_REQUEST['step'] == 'add_to_cart')
&& & include_once('includes/cls_json.php');
在下面添加
if ( empty($_SESSION['user_name']))
&& & & &$json = new JSON;
&& & & & &$result['error'] &= &999&;
&& & & & $result['message'] = &请先登录&;
&& & & & die($json-&encode($result));
2、不自动清空会员的购物车.
关闭浏览器时,用户信息会更新,购物车被清空。退出登陆更是清空。我们修改为只清空游客的购物车,会员的不清空。(网络上这一步有几个版本的代码,都搞得很复杂,说还要把lib.main.php里面加入多少代码来&更新购物车&,那是不需要的。因为购物车信息本来就已写入数据库了,此地只是阻止清空就行了。而且有些更新购物车的代码是错误的,真的添加上去后,购物车会出错,比如同一个商品有多个颜色时,只能买一种颜色。想买两个颜色就搞不成。所以不要画蛇添足去搞什么&更新购物车&)。
includes/cls_session.php找到destroy_session()函数,把其中
/* ECSHOP 自定义执行部分*/
& & & & if (!empty($GLOBALS['ecs']))
&& & & & {
&& & & & & & $this-&db-&query('DELETE FROM ' . $GLOBALS['ecs']-&table('cart') . & WHERE session_id = '$this-&session_id' &);
&& & & & }
/* ECSHOP 自定义执行部分(不清空会员的购物车) */
& & & & if (!empty($GLOBALS['ecs']))
&& & & & {
&& & & & & & $this-&db-&query('DELETE FROM ' . $GLOBALS['ecs']-&table('cart') . & WHERE session_id = '$this-&session_id' AND user_id = '' &);
&& & & & }
3、换IP时不影响购物车
将用户的IP存入Cookie,或者在生成SESSION时,不取IP。这步修改对动态IP用户无法使用购物车也同时解决。这里IP存入Cookie的有效期是10天,也就是10后购物车依然被清空了。如果想保留更久或更短,可以把864000改为其它数字。一般来说购物车数据留10天已足够了,10天了还未下单,基本上就不会下单了。而10后购物车清空,不会造成数据库压力。
includes/cls_session.php把
&$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()+864000, $this-&session_cookie_path);
&& & & & }
4、管理员登陆时不清空购物车
特别不能理解管理员登陆后台,居然把全站的购物车都清空。难道管理员成了清洁工?若干会员在前台选购,选着选着你管理员要进后台看一下,你一进去,前台会员的购物车全空了、全下不成单了--这都什么事儿啊!也不知道是哪个脑残设计的这么一个步骤。
  找admin/privilege.php,以下代码注解掉
// 清除购物车中过期的数据
& & & & clear_cart();
// 删除cart中无效的数据
& & $sql = &DELETE FROM & . $GLOBALS['ecs']-&table('cart') .
&& & && WHERE session_id NOT & . db_create_in($valid_sess);
&& & $GLOBALS['db']-&query($sql);
也注解掉。&
售前电话热线
售前QQ客服快速清空ecshop广告数据的方法_ecshop常见问题_常见问题_ecshop教程_ECSHOP开发中心官网
欢迎光临68ECSHOP官网!
& 快速清空ecshop广告数据的方法
快速清空ecshop广告数据的方法
/ecshop开发中心() /
因为ecshop更换模板之后有大量的广告都需要更换,所以清空广告变的比较繁琐,68ecshop教大家一个方便清空广告的方法
分别把下面两段数据放在后台 SQL 查询中,分别提交即可清空所有广告位置和广告列表
delete from ecs_ad_position where &position_id& 0
delete from ecs_ad where &ad_id& 0
ECSHOP下载
最新ECSHOP V2.7.3 正式版
补丁下载专区
&400-078-5268&转1
&400-078-5268&转2
工作日:9:00-17:30ecshop的ecs_sessions表跟ecs_sessions_data表可以清空吗?有什么影响_百度知道
ecshop的ecs_sessions表跟ecs_sessions_data表可以清空吗?有什么影响
ecshop的ecs_sessions表跟ecs_sessions_data表可以清空吗?有什么影响
提问者采纳
可以清空。ecs_sessions表是用来存session的,随时会被清空,ecs_sessions_data则是用来记录session一些信息如使用习惯上次访问的IP地址等。
提问者评价
其他类似问题
为您推荐:
ecshop的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁ecshop 实现购物车退出不清空_ecshop二次开发_常见问题_ecshop教程_ECSHOP开发中心官网
欢迎光临68ECSHOP官网!
& ecshop 实现购物车退出不清空
ecshop 实现购物车退出不清空
/ecshop开发中心() /
在使用过程中会遇到会员退出再登陆时购物车里面的商品会被清空掉的,通过的技术,整理的文档,对程序做简单修改即可实现会员退出不清空购物车
ECShop版本:V2.7.3
涉及修改文件:
&1. \includes\cls_session.php
2. \includes\lib_main.php
详细修改记录:
&1. \includes\cls_session.php
第一步:搜索$this-&db-&query('DELETE FROM ' .$GLOBALS['ecs']-&table('cart') . & WHERE session_id ='$this-&session_id'&);
只有一处(270行左右),将其修改为
$this-&db-&query('DELETE FROM ' .$GLOBALS['ecs']-&table('cart') . & WHERE session_id ='$this-&session_id' AND user_id = 0&);//只清空匿名用户的购物车&add&68ecshop开发中心& 退出不清空购物车*/
2. \includes\lib_main.php
第一步:搜索function update_user_info()
27行左右,在改函数内部末尾添加如下代码
&/* 更新用户购物车session_id add 68ecshop开发中心 退出不清空购物车*/
$sql = &UPDATE & . $GLOBALS['ecs']-&table('cart') . & SET&.
&&&&&&&&&&& & session_id = '& .SESS_ID . &'&.
&&&&&&&&&& & WHERE user_id = '& .$_SESSION['user_id'] . &'&;
&&& $GLOBALS['db']-&query($sql);
至此全部修改完成
注:红色代码为所需添加的代码
ECSHOP下载
最新ECSHOP V2.7.3 正式版
补丁下载专区
&400-078-5268&转1
&400-078-5268&转2
工作日:9:00-17:30

我要回帖

更多关于 ecshop ecs header 的文章

 

随机推荐