购物车及商品php代码_php购物车代码_php网上商城购物车代码一例

摘要 腾兴网为您分享:php网上商城购物车代码一例,有信,英语字典,携程,网赚招聘等软件知识,以及迅雷vip补丁,全能素描,苏酒门户,inshort视频剪辑,北京地铁高清大图,监控上网,云播搜,维融打印机,迷你pdf阅读器,艾米范,魔兽争霸3冰封王座对战平台,美美理财,车满满物流配货网,itme收录优美,文字转换声音等软件it资讯,欢迎关注腾兴网。一个包含促销活动的购物车,用到了PHP的zend framework框架。 购物车的数据库设计: 1. id 2. goods_id 商品ID 3. session_id 购物车ID 4. goods_sn 商品编码 5. goods_name 商品名称 6. shop_price 商品商城售...

一个包含促销活动的购物车,用到了PHP的zend framework框架。

购物车的数据库设计:

1. id

2. goods_id 商品ID

3. session_id 购物车ID

4. goods_sn 商品编码

5. goods_name 商品名称

6. shop_price 商品商城售价

7. goods_price 商品真实售价(与shop_price的区别在于,当打折的时候,shop_price是打折之前商品的售价,而goods_price是打折之后的)

8. goods_number 数量

9. weight 商品重量

10. goods_attr 商品属性(如颜色,尺码)

11. promote_code 促销编码(为商品促销,做的策略模式识别码)

12. is_promote 促销ID

13. stock_id 库存ID

如果还有其他的需求,比如商品的返利积分,商品是否虚拟产品,商品是否代发货等等,可以另加标示符。

此购物车要求是在用户不登陆状态下可以把商品添加到购物车内的,所以在购物车数据库设计里面,就没有加入user_id这个字段,考虑到的是用户未登陆下也可以把商品放入购物车。

识别购物车到底是哪一位用户时,需要用到session_id,是用户对应购物车的唯一识别码。

生成这个码可以放在购物车对象Cart的构造函数里:

代码发下:

复制代码 代码示例:

/**

* 购物车类购物方法

* @param string $cart_id 购物车ID

*/

public function __construct()

{

Zend_Session::start();

$this->_session = new Zend_Session_Namespace('ShopCart');

if(!isset($this->_session->session_id))

{

$this->_session->session_id = md5(uniqid(mt_rand(), true));

$this->_session->info = array();

}

$this->_cart_id = $this->_session->session_id;

}

?>

第三点,添加一个商品到购物车。

添加一个商品到购物车,在这里,我把它想成是两个动作。

第一个动作:添加商品到购物车数据库里面。

第二个动作:查找购物车所有商品,并显示出来。

首先是第一个动作:

代码如下:

复制代码 代码示例:

/**

* 添加商品

*/

public function goodsAddAction()

{

// 添加商品使用get请求

$goods_id = $this->_getParam('goods_id');//商品ID

$goods_spec = $this->_getParam('filter_name');//商品属性(颜色,尺码)

$goods_number = $this->_getParam('goods_number');//商品数量

$promote_name = $this->_getParam('promote_name', 'Default');//促销策略

//获取购物车实例

$cartB = $this->_getCart();

$cartB->goodsAdd($goods_id, $goods_spec, $goods_number, $promote_name);

//添加成功,跳转到下一步,查找购物车所有商品,并显示出来。

$this->_showMessage(Bll_Context::isError() ? Bll_Context::getError() : '添加到购物篮成功!', Bll_Context::getRecirect('/orderv2'), 3);

}

?>

上段代码第15行:

$cartB->goodsAdd($goods_id, $goods_spec, $goods_number, $promote_name);

这就是添加商品操作函数,这里面的$promote_name是促销的一个参数。

这里只要知道是添加这个商品的基本信息,存入到php购物车数据库里即可。

其次就是第二个动作:

复制代码 代码示例:

/**

* 购物列表

*/

public function indexAction()

{

//获取购物车实例

$cartB = $this->_getCart();

//列出购物车内所有商品

$this->view->goods_list = $cartB->goodsViewList();

//获取用于显示规则消息的规则实例列表

$this->view->tips = $cartB->goodsTipRules();

//购物车内商品总数量

$this->view->total_number = $cartB->getTotalGoodsNumber();

//获取购物车内商品总货额

$this->view->total_amount = $cartB->getTotalAmount();

}

?>

以上代码中,第一个和第二个动作必须是要分开的,允许不添加商品直接点购物车。

就是这些了,抛砖引玉吧,希望对大家有些许的启发,在下就满足了。

相关推荐

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值