ECShop模板在使用过程中会遇到会员退出再登陆时购物车里面的商品会被清空掉的,通过ECSHOP开发中心的技术,整理的文档,对程序做简单修改即可实现会员退出不清空购物车
ECShop版本:V2.7.3
修改文件 \includes\cls_session.php 270行左右
$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");//只清空匿名用户的购物车,退出不清空购物车*/
修改文件 \includes\lib_main.php 27行
function update_user_info()
此函数末尾处添加:
/* 更新用户购物车,退出不清空购物车*/
$sql = "UPDATE " . $GLOBALS['ecs']->table('cart') . " SET".
" session_id = '" .SESS_ID . "'".
" WHERE user_id = '" .$_SESSION['user_id'] . "'";
$GLOBALS['db']->query($sql);
至此全部修改完成
文章评论