zoukankan      html  css  js  c++  java
  • ./flow.php (购物流程)

    19 require(ROOT_PATH . 'includes/lib_order.php'); 购物流程函数库
    22 require_once(ROOT_PATH . 'languages/' .$_CFG['lang']. '/shopping_flow.php'); 载入语言文件
    28-31 默认act为购物车
    38 获取flow页面动态显示内容
    1819 处理默认$_REQUEST['step']
    1822 $_SESSION['flow_type'] = CART_GENERAL_GOODS; 设置购物流程为普通购物流程
    1825-1829
    if ($_CFG['one_step_buy'] == '1')
        {
            ecs_header("Location: flow.php?step=checkout\n"); 如果设置$_CFG['one_step_buy'] == '1',直接退出,一般$_CFG['one_step_buy']设置为0
    设置方法在数据库中ecs_shop_config表中
            exit;
        }
    1832 $cart_goods = get_cart_goods(); 取得购物车商品,计算合计 get_cart_goods() 在./includes/lib_order.php中定义1433
    //--------------------------------------------------------------------------
    48 if ($_REQUEST['step'] == 'add_to_cart') 增加商品
    54 $_POST['goods'] = json_str_iconv($_POST['goods']); 转码
    56-64 检查商品ID和post的goods字符串,包括商品规格,id,商品数量
    66 $result = array('error' => 0, 'message' => '', 'content' => '', 'goods_id' => '');初始化返回数组
    69-73 检查goods
    75 $goods = $json->decode($_POST['goods']); 解码
    78-94 检查商品规格
    97-100 一步式购物处理
    111-134 添加购物商品
    //---------------------------------------------------------------------------
    elseif ($_REQUEST['step'] == 'link_buy') (选择付款方式,不确定)
    135-145 判断商品是否在购物车中如果不存在则加入,然后重定向./flow.php
    //-----------------------------------------------------------------------------
    146 elseif ($_REQUEST['step'] == 'login')
    153-178 处理get请求(即显示登陆页面)
    184-200 if (($captcha & CAPTCHA_LOGIN) && (!($captcha & CAPTCHA_LOGIN_FAIL) || (($captcha & CAPTCHA_LOGIN_FAIL) && $_SESSION['login_fail'] > 2)) && gd_version() > 0)
    $captcha 值为12,CAPTCHA_LOGIN为2 , $captcha & CAPTCHA_LOGIN值为0 ,所以不必处理验证码
    202-219 登陆处理,登陆成功后更新用户信息从新计算购物车的商品价格,如果该用户购物车中有商品,跳转到结算页面,否则跳转到主页
    220-222 登陆失败处理
    226-250 注册处理
    228 if ((intval($_CFG['captcha']) & CAPTCHA_REGISTER) && gd_version() > 0) ((intval($_CFG['captcha']) & CAPTCHA_REGISTER) 值为0 所以不必处理验证码
    245-254 如果注册成功跳转到flow.php?step=consignee页面,否则提示错误
    //----------------------------------------------------------------------------
    267 elseif ($_REQUEST['step'] == 'consignee') 收货人信息
    284-286 获取区域信息
    289-298 获取同一session的收货人信息
    301-307 如果session中用户id为0时获取在session中收货人信息
    312-328 确定各区域选中状态
    333-370 保存收货人信息,并写到$_SESSION['flow_consignee']
    跳转到Location: flow.php?step=checkout
    //----------------------------------------------------------------------------
    371 elseif ($_REQUEST['step'] == 'drop_consignee') 删除收货人信息
    //---------------------------------------------------------------------------
    390 elseif ($_REQUEST['step'] == 'checkout') 定单确认
    406-413 判断购物车中是否有商品
    420-425 获取默认收货地址,检查session中默认收货地址和用户标识
    427-435 保证收货人信息完整,并写入session
    441 $cart_goods = cart_goods($flow_type); // 取得商品列表,计算合计
    
    原文:http://hi.baidu.com/liehu1119/blog/item/6541aadd93dcbe335882dd66.html

    作者:沐雪
    文章均系作者原创或翻译,如有错误不妥之处,欢迎各位批评指正。本文版权归作者和博客园共有,如需转载恳请注明。
    如果您觉得阅读这篇博客让你有所收获,请点击右下方【推荐】
    找一找教程网-随时随地学软件编程 http://www.zyiz.net/

  • 相关阅读:
    前端基础进阶(十一):详细图解jQuery对象,以及如何扩展jQuery插件
    前端基础进阶(十):面向对象实战之封装拖拽对象
    前端基础进阶(九):详解面向对象、构造函数、原型与原型链
    前端基础进阶(八):深入详解函数的柯里化
    前端基础进阶(七):函数与函数式编程
    前端基础进阶(六):在chrome开发者工具中观察函数调用栈、作用域链与闭包
    前端基础进阶(五):全方位解读this
    lvs健康检查脚本第三版
    rsync同步常用命令
    nginx启动脚本
  • 原文地址:https://www.cnblogs.com/puzi0315/p/2644780.html
Copyright © 2011-2022 走看看