分类分类
更新时间:2026-08-08 14:28:46作者:zhao
大家都知道ECShop会员退出登录同时会把已经加入购物车里的商品清空掉,通过本内容做修改即可实现会员退出登录同时保留原购物车里面的商品不清空。
1. 打开includescls_session.php文件
搜索如下代码:
$this->db->query('DELETE FROM ' . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '$this->session_id'");
把代码修改为:
$this->db->query('DELETE FROM ' . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '$this->session_id' AND user_id = 0");
2. 打开includeslib_main.php文件
搜索如下代码:
function update_user_info()
在改函数内部末尾添加如下代码:
/* 更新用户购物车,退出不清空购物车 */
$sql = "UPDATE " .$GLOBALS['ecs']->table('cart'). " SET".
" user_id = '" . $_SESSION['user_id'] . "'".
" WHERE session_id = '" . SESS_ID . "'";
$GLOBALS['db']->query($sql);
$sql = "UPDATE " . $GLOBALS['ecs']->table('cart') . " SET".
" session_id = '" . SESS_ID . "'".
" WHERE user_id = '" . $_SESSION['user_id'] . "'";
$GLOBALS['db']->query($sql);
/* 删除购物车中已下架的商品 */
$sql = "SELECT DISTINCT(c.goods_id) FROM " .$GLOBALS['ecs']->table('cart').
" AS c left JOIN " .$GLOBALS['ecs']->table('goods').
" AS g on c.goods_id = g.goods_id WHERE g.is_on_sale = 0 AND c.user_id = '" . $_SESSION['user_id'] . "'";
$data = $GLOBALS['db'] ->getAll($sql);
if($data){
foreach ($data as $k=>$v){
$sql = "DELETE FROM " .$GLOBALS['ecs']->table('cart'). " WHERE goods_id = '" . $v['goods_id'] . "'";
$GLOBALS['db'] -> query($sql);
}
}
相关
日本事故物件监视协会3冒险游戏170.33 MBv1.0.42026-08-08
下载你牛你来休闲益智116.37 MBv1.0.22026-08-08
下载文字密室逃脱手机版冒险游戏255.16 MBv1.62026-08-07
下载苏丹的游戏手机版角色扮演1.02 GBv1.0.62026-08-07
下载超市大亨3D手游经营养成253.14 MBv10.252026-08-07
下载你只能推搡动作射击44.62 MBv1.102026-08-07
下载仙逆本尊手游角色扮演298.41 Mv0.0.42026-08-07
下载天使帝国4手机版角色扮演837.88 Mv1.02026-08-07
下载丹墨三国弈手机版策略游戏2.14 GBv1.0.02026-08-07
下载CM语音App社交通讯95.16 Mv8.16.02026-08-07
下载光氪灵动app实用工具7.6 Mv1.2.12026-08-07
下载逃出沙盒世界游戏角色扮演247.76 Mv1.0.12026-08-07
下载










