最模板 - 外贸网站建设,外贸网站模板

最模板

当前位置: 首页 > 建站教程 > CMS教程 > ECShop教程 >

ecshop购物车分析和修改购买数量

时间:2014-06-10 11:03来源: 作者: 点击:
ecshop购物车分析 ecshop 的购物车是依靠数据库中 cart 表来支持的。 ecshop 表中, rec_id 为表示编号, user_id 为注册用户的 id,session_id 表示 session 会话 id, 现在的缺陷就在这里,如果关闭浏
(责任编辑:admin)

ecshop购物车分析

ecshop 的购物车是依靠数据库中cart表来支持的。ecshop表中,rec_id为表示编号,user_id为注册用户的id,session_id表示session会话id,现在的缺陷就在这里,如果关闭浏

览器。那么这个session_id将会自动注销。所以购物车中的产品总是会随着浏览器的关闭而丢失,ecshop的购物车它会存储一个产品id,还有产品价格,市场价格,产品名称等相关的产

品信息.在购买的时候,还有一个最重要的步骤,判断购买的类型$flow_type = isset($_SESSION['flow_type']) ? intval($_SESSION['flow_type']) : CART_GENERAL_GOODS;
$flow_type是来标识购物类型的。有可能是团购,有可能是兑换积分商品。

      也需要检查商品类型,是礼品还是其他 "AND parent_id = 0 AND is_gift = 0 AND rec_type = '$flow_type'";如果是全是礼品,将被提示不能进行购买。

 

ecshop购物车修改购买数量

ecshop发展到今天,已经有比较完善的购物车购买修改产品数量功能了。很多人还模仿了自动修改功能,输入数量,就达到自动计算金额的效果.

     ecshop2.6.2还没有这个功能,他修改购物车的时候,需要通过按扭,确认更改之后,才能修改购物车。首先看flow.php中。

     elseif ($_REQUEST['step'] == 'update_cart')
{
    /*------------------------------------------------------ */
    //--
更新购物车
    /*------------------------------------------------------ */

    if (isset($_POST['goods_number']) && is_array($_POST['goods_number']))
    {
        flow_update_cart($_POST['goods_number']);
    }

    show_message($_LANG['update_cart_notice'], $_LANG['back_to_cart'], 'flow.php');
    exit;
}

   他是通过获取goods_number来处理的。goods_number格式为

   这里面的7为购物车中产品所在表中的IDvalue=2这里表示购买该产品的数量。

    通过ecshop函数 flow_update_cart($_POST['goods_number']);来达到修改购买数量的效果。在购买过程中,如果购买的数量超过了该产品库存的数量。那么在该函数中,

         if ($row['goods_number'] < $val)
            {
                show_message(sprintf($GLOBALS['_LANG']['stock_insufficiency'], $row['goods_name'],
                $row['goods_number'], $row['goods_number']));
                exit;
            }

       会提示你。购买的数量超过了库存。

 

------分隔线----------------------------
栏目列表
推荐内容