百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>Ecshop教程> 实现将ecshop商品批量加入收藏
分享文章到:

实现将ecshop商品批量加入收藏

发布时间:12/03 来源: 浏览: 关键词:
ecshop 是自带收藏商品功能的,只可惜只能一次收藏一个,相对于较大一点的购物站点,有可能一次就需要收藏多个商品,实现这样的操作也并不是很难的,只需要在 ecshop 自带收藏功能的基础上小小的更改一下即可,下面夏日博客就来教大家如何修改一下吧。 首先循环出要收藏商品的ID,用一个符号进行分隔开,比如‘12|5|8|’,到时候传入 PHP 处理的时候就可以使用 explode() 函数按“|”符号来进行分割分开,然后再进行循环这些ID,就可以实现了,代码如下: 加入收藏夹 经过循环后就可以得到类似 加入收藏夹 的代码了。 接着打开 common.js,找到 collect(goodsId) 函数,这个就是收藏的函数了,我们可以仿照这个函数再重新添加一个函数,实例代码如下: /* * * 批量添加商品到收藏夹 */ function collect_all(AllId){ Ajax.call('user.php?act=collect_all', 'id=' + AllId, collectResponse, 'GET', 'JSON'); } 最后打开 user.php 文件,在这个文件里面添加如下代码: /* 批量添加收藏商品(ajax) */ elseif ($action == 'collect_all'){ include_once(ROOT_PATH .'includes/cls_json.php'); $json = new JSON(); $result = array('error' => 0, 'message' => ''); $goods_id = $_GET['id']; $goods_id = explode("|",$goods_id); $goods_id = array_filter($goods_id); //过滤掉数组中空的值 if (!isset($_SESSION['user_id']) || $_SESSION['user_id'] == 0){ $result['error'] = 1; $result['message'] = $_LANG['login_please']; die($json->encode($result)); } else{ foreach($goods_id as $goods_id){ /* 检查是否已经存在于用户的收藏夹 */ $sql = "SELECT COUNT(*) FROM " .$GLOBALS['ecs']->table('collect_goods') . " WHERE user_id='$_SESSION[user_id]' AND goods_id = '$goods_id'"; if ($GLOBALS['db']->GetOne($sql) > 0){} else{ $time = gmtime(); $sql = "INSERT INTO " .$GLOBALS['ecs']->table('collect_goods'). " (user_id, goods_id, add_time) " . " VALUES ('$_SESSION[user_id]', '$goods_id', '$time')"; if ($GLOBALS['db']->query($sql) === false){ $result['error'] = 1; $result['message'] = $GLOBALS['db']->errorMsg(); die($json->encode($result)); } } } $result['error'] = 0; $result['message'] = $GLOBALS['_LANG']['collect_success']; die($json->encode($result)); } } OK,做完这些就已经可以实现商品批量加入收藏的功能了。
打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

相关文章

共有4人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板