商城购物车php代码,php网上商城购物车代码一例
一个包含促销活动的购物车,用到了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();
}
?>
以上代码中,第一个和第二个动作必须是要分开的,允许不添加商品直接点购物车。
就是这些了,抛砖引玉吧,希望对大家有些许的启发,在下就满足了。
商城购物车php代码,php网上商城购物车代码一例相关推荐
- 购物车及商品php代码_php购物车代码_php网上商城购物车代码一例
摘要 腾兴网为您分享:php网上商城购物车代码一例,有信,英语字典,携程,网赚招聘等软件知识,以及迅雷vip补丁,全能素描,苏酒门户,inshort视频剪辑,北京地铁高清大图,监控上网,云播搜,维融打 ...
- 购物车及商品php代码_php网上商城购物车代码一例
一个包含促销活动的购物车,用到了PHP的zend framework框架. 购物车的数据库设计: 1. id 2. goods_id 商品ID 3. session_id 购物车ID 4. goods ...
- Android学习之网上商城(下)
前言 上一篇博客主要介绍了本次网上商城的实现过程中的一些用法,这篇博客主要就是说明每个功能模式的实现方法 Android学习之网上商城(上) Android学习之网上商城(下) 源码下载: 链接:ht ...
- Android学习之网上商城(上)
前言 又到了课设的时候,这次课设比较难受,因为两周时间中还有3门考试,在课设的时候还要复习,着实耗费了不少的精力,不过也收获多多,接下来总结一下本次课设中学到的东西 Android学习之网上商城(上) ...
- 【计算机毕业设计】123网上商城系统的设计与实现
一.系统截图(需要演示视频可以私聊) 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式.本网上商城系统就是在这样的大环境下 ...
- 【计算机毕业设计】123网上商城系统设计与实现
一.系统截图(需要演示视频可以私聊) 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式.本网上商城系统就是在这样的大环境下 ...
- 【计算机毕业设计】512网上商城购物系统
一.系统截图(需要演示视频可以私聊) 摘 要 随着科学技术的飞速发展,社会的方方面面.各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,网上商城购物系统当然也不能排除在外.网上商城 ...
- B2B2C网上商城开发指南——基于SaaS和淘宝API开放平台
B2B2C网上商城开发指南--基于SaaS和淘宝API开放平台邢波涛 郭 娟 著 ISBN 978-7-121-12983-4 2011年4月出版 定价:49.00元 16开 388 页 内 容 ...
- springboot+vue+elementui实现前后端分离的网上商城购物系统
文末获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclip ...
- java基于springboot的网上商城购物系统
项目介绍 随着社会的快速发展,计算机的影响是全面且深入的.人们生活水平的不断提高,日常生活中人们对网上商城购物系统方面的要求也在不断提高,购物的人数更是不断增加,使得网上商城购物系统的开发成为必需而且 ...
最新文章
- springboot 读取配置文件内容的几种方式
- C#机房重构-总结(三)
- 如何让你的操作系统更安全二
- ones--创建全1矩阵
- 长沙理工大学第十二届ACM大赛-重现赛C	安卓图案解锁 (模拟)
- db2 springboot 整合_[SpringBoot]快速配置多数据源(整合MyBatis)
- eclipse分级,分级列表显示 - bieshixuan的个人博客 - OSCHINA - 中文开源技术交流社区...
- 空闲队列函数排队 requestIdleCallback
- java可以看懂php代码吗_同一段代码,在PHP里和Java里都能运行,输出结果相同,你能看懂其中的原理吗?...
- ant压缩html,ant+yuicompressor压缩js/css
- 搭建软件仓库回源代理拾遗
- snmpwalk , snmpget
- Unity3D Demo
- 情侣推送早安问候之小程序订阅通知模板推送 (出现在消息列表的服务通知)
- stearm计算机验证码,steam账户名称怎么取,值得收藏
- 使用Python绘制热图的库 pyHeatMap 使用Python绘制热图的库 pyHeatMap
- 数据库相关类型(日期、复合、bit、布尔)
- 国家知识产权局宣告易百珑自发电专利权有效
- 第二章 项目经理评分
- PoseCNN(A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes)复现记录
热门文章
- java子弹集合_Java使用线程并发库模拟弹夹装弹以及发射子弹的过程
- intellij 上导入外部包教程
- options请求_跨域共享资源(CORS)和OPTIONS 请求
- linux map内存在哪里分配,linux内存分配与回收
- Java中String、StringBuffer 、StringBuilder
- Highways POJ-1751 最小生成树 Prim算法
- 2017-2018论文更新
- BZOJ4872: [Shoi2017]分手是祝愿
- html中给select下拉框赋值
- php对表中的字段自选排序,Mysql应用MySQL 按指定字段自定义列表排序的实现