首页建站经验 ecshop会员退出登录保留购物车里的商品

ecshop会员退出登录保留购物车里的商品

大家都知道ECShop会员退出登录同时会把已经加入购物车里的商品清空掉,通过本内容做修改即可实现会员退出登录同时保留原购物车里面的商品不清空。1. 打开includes/cls_sessio…

大家都知道ECShop会员退出登录同时会把已经加入购物车里的商品清空掉,通过本内容做修改即可实现会员退出登录同时保留原购物车里面的商品不清空。

1. 打开includes/cls_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. 打开includes/lib_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);

}

}

本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/16120.html
上一篇Discuz! X3.1论坛批量删帖
下一篇 后台登陆报错nknown column 'ec_salt' in 'field list' ) [3] => Array
admin

作者: admin

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部