解决ECSHOP免运费赠品加入购物车后依旧收取运费的问题
2016-09-02 16:28 来源:www.chinab4c.com 作者:ecshop专家
ECSHOP插件网发现使用ECSHOP商城的所有版本,包括最新2.7.4版本,存在免运费赠品加入购物车后依旧收取运费的错误漏洞问题。比如把充值卡商品后台勾选设置为免运费,买家购买该充值卡商品并添加免运费的赠品后,订单反而又要收取邮费的BUG问题。 解决方法打开ECSHOP网站根目录中的flow.php文件,搜索如下代码 function add_gift_to_cart($act_id, $id, $price) { $sql = \"INSERT INTO \" . $GLOBALS[\'ecs\']->table(\'cart\') . \" (\" . \"user_id, session_id, goods_id, goods_sn, goods_name, market_price, goods_price, \". \"goods_number, is_real, extension_code, parent_id, is_gift, rec_type ) \". \"SELECT \'$_SESSION[user_id]\', \'\" . SESS_ID . \"\', goods_id, goods_sn, goods_name, market_price, \". \"\'$price\', 1, is_real, extension_code, 0, \'$act_id\', \'\" . CART_GENERAL_GOODS . \"\' \" . \"FROM \" . $GLOBALS[\'ecs\']->table(\'goods\') . \" WHERE goods_id = \'$id\'\"; $GLOBALS[\'db\']->query($sql); } 将以上的代码修改为如下代码 function add_gift_to_cart($act_id, $id, $price) { $sql = \"INSERT INTO \" . $GLOBALS[\'ecs\']->table(\'cart\') . \" (\" . \"user_id, session_id, goods_id, goods_sn, goods_name, market_price, goods_price, \". \"goods_number, is_real, extension_code, parent_id, is_gift, rec_type, is_shipping ) \". \"SELECT \'$_SESSION[user_id]\', \'\" . SESS_ID . \"\', goods_id, goods_sn, goods_name, market_price, \". \"\'$price\', 1, is_real, extension_code, 0, \'$act_id\', \'\" . CART_GENERAL_GOODS . \"\', is_shipping \" . \"FROM \" . $GLOBALS[\'ecs\']->table(\'goods\') . \" WHERE goods_id = \'$id\'\"; $GLOBALS[\'db\']->query($sql); } 按照以上操作就很好的解决了ECShop网店添加免运费赠品后,购物车变为收取运费的错误漏洞这个问题了。
最近更新
常用插件
- ecshop2.7.1邮件发送插件
ecshop2.7.1邮件发送插件:该插件主要的开发思想是源于ecshop短信发送系统...
- ecshop二次开发商品购买增
图片1香...
- ecshop2.7.2生成虚拟订单2.
以前我们开发过ecshop下的虚拟订单,就是客户在访问的时候,会自动生...
- ecshop没登陆情况下订单查
ecshop没登陆情况下订单查询插件,主要是针对ecshop在没有登陆的情况下...
- ecshop最小购买数量控制插
ecshop最小购买数量控制插件,这个插件主要是为我们提供一个十分方便...