第8章 图书商城购物车模块开发
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8.2 项目分析:当当网购物
4.订单管理
单击“我的订单”按钮,进入订单管理页面,如图所 示。这里我们可以修改和取消订单信息。修改和取消 订单就是在修改和删除订单表中的记录。
8.2 项目分析
开发购物车的方法有两种: 一种是将购物信息存储到数据表中 二种是将购物信息存储到Session变量中 购物车模块功能结构如图所示
在购物车管理页面,当我们单击“取消图书”超链接 时(<a href="delgwc1.php?bookid=<?php echo $row['bookid'];?>">取消图书</a>),即可删除购物 车中的某个图书。 程序运行过程为:单击取消图书时,将取消的图书编 号传给移除图书页面(delgwc1.php),移除图书页面 根据图书编号删除对应的Session变量的值。
1.简述购物车模块的主要功能及处理流程 2.简述购物车实现的思路
二、操作题
1.完善购物车模块的开发,增加前台用户订单查看和 删除的功能。
8.4 项目实施
下面我们通过Session的方法开发购物车,主要实现添加 图书到购物车,查看购物车,删除购物车中的图书,清空 购物车、修改购买图书的数量和生成订单的功能。
8.4.1 购买图书
在图书展示区,单击相应图书的“购买”或“加入购 物车”按钮,即可将图书信息放入购物车中。完成添 加图书至购物车功能需要创建图书购买和添加图书至 购物车两个页面。购买页面负责显示图书信息,如图 所示。
8.6 本章小结
本章我们通过当当网购物体验和购物车模块的分析,完成 了“天天书屋”购物车模块的开发,主要包括图书购买、 购物车管理(修改数量、取消图书、清空购物车)、生成 订单和订单管理功能。为了保证大家学习PHP知识的系统 性,在技术拓展部分介绍了PHP的日期、时间函数。
8.7 强化练习 一、简答题
8.5 技术拓展
8.5.1 时间日期函数
1.时区设置 (1)修改PHP配置文件
在php.ini中找到date.timezone选项,将其值 设置为“RPC”(中华人民共和国)、 “Asia/Shang”(上海)、 “Asia/Chongqing”(重庆)或 “Asia/Urumpi”(乌鲁木齐)中的一个。 在应用程序中,在日期、时间函数之前使用此函 数可以完成对时区的设置,函数语法如下: bool date_default_timezone_set (timezone )
8.4 项目实施
8.4.1 购买图书
添加图书至购物车的实现过程为:当单击“购买”按 钮时,将图书编号传给添加图书至购物车页面( addgwc.php),添加图书至购物车页面接收图书购买 页面传递过来的图书编号,根据图书编号查询出图书 相关信息,将图书编号、图书姓名和购买数量等图书 信息保存到一个二维数组中,再将这个二维数组保存 到Session中,因为只有这样才能保证用户购买的图书 信息在不同页面存在。如果我们把二维数组看成是购 物车,那么用户购买的每本图书就是二维数组的一个 元素。关于图书购买数量我们是这样处理的,用户第 一次购买时默认购买数量是1,如果用户重复购买,则 在原购买数量基础上加1。
8.4 项目实施 8.4.2 查看购物车
当用户购物成功后,进入购物车管理页面,如图所示 。在此可以看到购买的图书信息,包括图书名称、图 书实际价格和购买数量等内容。
在购买图书时,将图书信息信息保存到了Session中, 此时只需从Session中取出这些信息,输出到网页中即 可。
8.4 项目实施 8.4.3 移除图书
例8-1 list()函数 函数用于将数组中的值赋给一些变量,语法格式如下所示:
void list ( mixed varname, mixed ... )
例8-2
8.3 技术准备
8.3.1相关函数
each()函数 函数返回数组中当前的键值对,并将数组指针向前移动一步。 函数语法格式如下所示:
8.4 项目实施 8.4.4 修改图书数量
在图书数量文本框中修改图书的数量,单击“修改图 书数量”按钮即可完成图书数量的修改,如图所示。
程序运行过程为:当单击“修改图书数量”按钮( <input type="submit" value="修改图书数量" />)时,新 的购买数量被提交给修改图书数量页面( changegwc.php),图书数量修改页面把新的购买数量 替换Session中原购买数量即可。
array each ( array &array )
键值对被返回为包含四个单元的数组,键名为0 、1、key和value,单元0和key包含有数组的键 名,单元1和value包含有数组的值。
例8-3 数组形态的Cookie和Session Cookie和Session都可以利用多维数组的形式,将多个内容存 储在相同名称的Cookie或Session中。 例8-4、例8-5
PHP+MySQL动态网页技术教程
第8章 图书商城购物车 模块开发
8.1 项目导引:购物车模块
在现实超市中我们是如何购物?
来到超市购买商品,首先我们推上车子,开始选购商 品,将商品放入车中,选购完商品后,到结算中心结 算。
在图书商城中购买图书的流程和在超市购买商品流程 类似。来到商城选购图书将图书放入购物车结算 下订单。图书商城中所说的购物车的作用也与超市中 的车子类似,用来存放用户选购的商品,那么大家思 考一下,用PHP如何实现购物车呢?
8.4 项目实施 8.4.5 清空购物车
当单击“清空购物车”超链接时(<a href=“delgwc2.php?id=1”>清空购物车</a>),购 物车管理页面中没有任何图书信息。清空购物车就是 将购物车的Session变量销毁。
8.4 项目实施 8.4.6 生成订单
在购物车管理页面核实完购买图书信息后,单击“结 算”按钮,进入填写收货人信息页面(dingdan.php) ,如图所示。在用户填写完收货地址等信息后,单击 “提交订单”按钮,将订单信息插入到数据库订单表 ,完成生成订单过程。
8.5 技术拓展 8.5.1 时间日期函数
3.日期和时间处理 getdate()函数:可以获取日期和时间信息,返回一 个根据时间戳取得的由日期、时间信息组成关联数 组 date()函数:用于对本地日期、时间进行格式化 checkdate()函数:检验日期和时间的有效性 例8-15 、例8-16 、例8-17
在图书商城中如何购物?
8.2 项目分析:当当网购物
购物车是用来储存用户购买的图书,用户可以将选中的图 书添加到购物车中、修改购物车中的图书数量、移除购物 车中的某件图书、清空购物车、查看购买图书的总价格等
1.选购图书
来到当当网,完成用户的注册登录,然后,开始选购 图书,看到喜欢的图书,单击“购买”按钮,将图书 放入购物车中,同时页面跳转到购物车管理页面,如 图所示。
(2)date_default_timezone_set()函数
8.5 技术拓展 8.5.1 时间日期函数
2.UNIX时间戳 在UNIX系统中,日期和时间表示为1970年1月1日零 点起到当前时间的秒数,这个时间称为UNIX时间戳 。这是大多数计算机表示时间的一种标准格式,用 32位的整数来表示。 mktime()函数:用于将一个时间转换为UNIX时间戳 time()函数:用于获取当前系统的UNIX时间戳 例8-14
开始
添加购物车
否
购物车中是 否有该图书
是
添加图书
数量加1
购物车列表
Hale Waihona Puke Baidu
查看购物车
移除图书
修改数量
清空购物车
收银台结账
8.3 技术准备
8.3.1相关函数
array_key_exists()函数 函数用于检查键名是否存在于指定数组中,语法格式如下:
bool array_key_exists ( mixed key, array search )
8.2 项目分析:当当网购物
2.购物车管理
在购物车管理页面用户可以将图书从购物车中移除, 修改购买数量,清空购物车,计算图书总价格,继续 购物和结算功能,如图8所示。
8.2 项目分析:当当网购物
3.生成订单
单击“结算”按钮,进入填写订单信息页面,如图所 示。完成用户等信息填写后,单击“提交订单”按钮 ,将订单信息插入到数据库中的订单表,生成订单, 完成图书购买。