您的位置:首页 > 运维架构

ECshop--购物车模块

2016-07-08 11:22 417 查看
location.href 指定跳转到对应页面,top参数为顶层,parents为上一层



<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff">
<!-- {if $discount gt 0} -->{$your_discount}<br /><!-- {/if} -->
{$shopping_money}<!-- {if $show_marketprice} -->,{$market_price_desc}<!-- {/if} -->
</td>
<td align="right" bgcolor="#ffffff">
<span style="color:#cc0000;"><strong> <input type="button" value="{$lang.clear_cart}" class="bnt_blue_1"
onclick="location.href='flow.php?step=clear'" </strong></span>
/>
<input name="submit" type="submit" class="bnt_blue_1" value="{$lang.update_cart}" />
</td>
</tr>
</table>
onclick="location.href='flow.php?step=clear

step=clear指定参数,跳转到flow界面之后通过
elseif ($_REQUEST['step'] == 'clear')
{
$sql = "DELETE FROM " . $ecs->table('cart') . " WHERE session_id='" . SESS_ID . "'";
$db->query($sql);

ecs_header("Location:./\n");
}
对应session记录给删除

ecs_header("Location:./\n");
在lib_base文件内有定义,跳转为空

更新购物车表单
<input name="submit" type="submit" class="bnt_blue_1" value="{$lang.update_cart}" />
表单传递到flow界面,通过
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;
}
判断数量是否被set并且传递过来多个数值,更新完之后跳转返回界面

这里引用网上的解释:

/*

ecshop里的 $_CFG数组主要是存放一些系统参数,并且全站共享的数据, 

在使用的时候,常常以$GLOBALS['_CFG']全局变量的模式来处理。   

ecshop 的$GLOBALS['_CFG'],主要是在includes/init.php中出现并且初始化的, 代码如下:

$_CFG = load_config(); load_config() 这个函数负责将参数取出来。  

load_config() 函数 存放位置在 /includes/lib_common.php 文件中。 

用代码编辑软件打开 /includes/lib_common.php 就能找到这个函数 load_config()。

*/

<table width="99%" align="center" border="0" cellpadding="5" cellspacing="0" bgcolor="#dddddd">
<tr>
<td bgcolor="#ffffff"><a href="./"><img src="images/continue.gif" alt="continue" /></a></td>
<td bgcolor="#ffffff" align="right">
<a href="flow.php?step=checkout"><img src="images/checkout.gif" alt="checkout" /></a></td>
</tr>
</table>
在flow.php中执行 elseif ($_REQUEST['step'] == 'checkout')
/* 取得购物类型 */
$flow_type = isset($_SESSION['flow_type']) ? intval($_SESSION['flow_type']) : CART_GENERAL_GOODS;确定购物类型是什么,比如说积分兑换商品啊,或者团购啊,后面的代码官方都给了详细的注释,300多行的业务逻辑代码,不包括调用,解释了“去结算”这个业务,登录之后一般就是验证跳到地址确认和付款界面







*发现cart表中的记录不会清除,如果你清空购物车或者把浏览器session清掉,还不清楚原因
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ecshop 购物车