网上购物系统的实验报告

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括: 浏览商品、查询商品、订购商品、购物车、用户维护等功能;后台管理是提供给管理员的,其中包 括:商品管理、用户管理、订单管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公准 备效率。
经过前期的深入调查和研究,总结出该系统需要完成的一些具体功能,分析如下: 1.用户管理:能够完成用户基本信息录入的注册、登录和注销。 2.管理呗管理:能够完成管理员对网站的商品订单的处理。
1.3.1 数据库设计原则
在动态网站的设计中,数据库设计的重要性不言而喻。如果设计不当,查询起来就非常吃力,程 序的性能也会受到影响。无论使用的是 MySQL 或者 Oracle 数据库,通过进行正规化的表格设计, 可以令 PHP 代码更具可读性,更容易扩展,从而也会提升应用的性能。
1、规范命名 所有的库名、表名、域名必须遵循统一的命名规则,并进行必要说明,以方便设计、维护、查 询。 2、控制字段的引用 在设计时,可以选择适当的数据库设计管理工具,以方便开发人员的分布式设计和数据小组的 集中审核管理。采用统一的命名规则,如果设计的字段已经存在,可直接引用;否则,应重新设计。
if($number%$pagesize==0){//取余数,看是否等于0 $total=$number/$pagesize; } else{ $total=(int)($number/$pagesize)+1; } if(isset($_GET['page']))//判断是否是第一页 { $page=(int)($_GET['page']); } else $page=1; $start=($page-1)*$pagesize;//计算起始位置 $prodcatsql="select *from products limit $start,$pagesize";//根据页码$page计算出起始位置$start取 值,以$start为起点,个数为$pagesize
⑴ 【admins 表】(username、password) ⑵ 【categories 表】(id、name) ⑶ 【customers 表】(id、username、password、add1、add2、add3、postcode、phone、email) ⑷ 【orderitems 表】(id、order_id、product_id、quantity) ⑸ 【orders 表】(id、customer_id、registered、payment_type、date、status、total) ⑹ 【products 表】(id、cat_id、name、description、image、price) 其中,用下划线和粗体标记的属性为表的主键属性。各表的具体设计如表 4-1~表 4-9 所示。 根据 E-R 图,设计每张表的变量名,变量的类型及主键。
1.2 总体设计
根据网上购物的功能需求,进行系统分析设计。系统功能模块图如图 1-1 所示:
1
南京晓庄学院
图 1-1 系统功能模块图
1.2.1 用户模块
用户模块又分为三个子模块:注册、登录及注销模板;选择商品并添加到购物车模块;付款结 算模块。首先,用户登录后可以查看购物网站上所有的商品,根据个人爱好、需要,选择商品,用 户可以通过查看主页上显示的商品进行选择,也可通过分类即菜单栏的导航进行选择商品。然后, 选择好商品后,可通过添加到购物车,在购物车后也可以再继续购物或者删除不需要的商品。最后 就是进行付款结算。结算完成后,注销用户,以便下次继续使用(模块图如图 1-2 所示)。
网络是网上商店的存在载体。网上商店向网上购物者传递商品信息,网上购物者通过网上商店 进香商品和款项的交易。服装鞋帽商城采用 PHP 技术和 SQL 数据库,以 Dreamweaver MX 2004 为开 发环境进行商城站点的构建,并选择 Xampp 作为服务器,进行系统分析,为将来进一步的实施打下 一个坚实的技术基础。
2.1.4 会话管理
用户可以根据身份进行选择登录,在系统用户登录的时候,用户需要输入用户名和密码及验证 码进行数据库登录验证。用户必须输入用户名和密码以及验证码。否则将弹出对话框进行提示。
在进行用户身份识别时,需要对用户的一些信息参数进行传递与保存,这就要使用到 SESSION 或者 COOKIE 技术。
2.1.1 数据分页功能
当要显示的数据比较多,一个页面无法完全显示,此时便需要进行数据的分页处理(如图2-1)。 用以下代码实现的简单分页,非常简单,具体实现主要代码如下: $pagesize=3; $validid = $_GET['id']; $sql= "SELECT *FROM products "; $result=mysql_query($sql); $number=mysql_num_rows($result);//取记录的条数
3
南京晓庄学院
3、库表重复控制 在设计过程中,如果发现大部分字段都已存在,开发人员应怀疑所设计的库表是否已存在。通 过对字段所在库表及相应设计人员的查询,可以确认库表是否确实重复。 4、并发控制 设计中应进行并发控制,即对于同一个库表,在同一时间只有一个人有控制权,其他人只能进 行查询。 5、必要的讨论 数据库设计完成后,应与指导老师进行讨论,通过讨论来熟悉数据库,从而对设计中存在的问 题进行控制或从中获取数据库设计的必要信息。
4、orders 表 Orders 表存放订单的详细信息。 表 1-4 orders 表
7
南京晓庄学院
5、products 表 Products 表存放商品的名称,描述,图片,价格等。 表 1-5 products 表
6、custermers 表 Custermers 表存放教师上传的文件的信息。 表 1-6 custemers 表
SESSION 与 COOKIE 不同的是它不需要每次都要从客户端传来,它的数据保存在服务器上,也 不会自传给客户端。根据客户端发来的页面请求中的 SESSIONID 来查找是否有对应的 SESSION 可 用。如果有,则为 PHP 提供这个 SESSION,如果没有则创建一个供 PHP 使用。直到这次会话的结 束,SESSION 才会被清除。鉴于此本系统采用的是 SEEION 技术。
1.4 本章小结
本章介绍了网上购物系统的总体构想,以及实பைடு நூலகம்的主要功能。根据需求分析对模块功能作了较 为详细的介绍。最后介绍了数据库的设计原则,分析了数据库的概念与逻辑结构设计。
8
南京晓庄学院
2 系统功能的具体实现
2.1 系统功能设计
在系统进行整体设计的过程中,将系统中的公用代码部分分离了出来,避免了系统中出现代码 冗余,同时也提高了系统的开发效率。
服务器端的 SESSION 和客户端的 COOKIE 是两种重要的参数传递与保存的技术,它们有各自 的优点与不足,但都在 Web 系统中发挥着很大的作用。
SESSION:在计算机中是存在服务器端的,在网络应用中,称为“会话”。“会话”可以简单的理 解为浏览器与服务器的一次对话过程,这个过程从第一次服务器收到浏览器的页面请求开始到最后 一次请求为止。一次会话对应着一个 SESSION,每个访问者都有自己的一个 SESSION,所以像用户 信息等全局性的数据非常适合放在 SESSION 中,以供整个访问过程使用。
10
南京晓庄学院
2.2 用户模块功能的实现
2.2.1 用户注册
在注册用户时,需要填写用户名,密码,地址,邮编,电话号码,以及邮箱等(每个信息都不 能为空,否则将弹出对话框进行提示)。填写完提交后写入数据库并判断是否注册成功。主要代码如 下:
if(empty($username))//判断用户名是否为空。 die("<script>alert('用户名不能为空');location.href='register.php'</script>");//弹出对话提示并回到注册 $sql="INSERTINTOcustomersVALUES('','$username','$userpassword','$add1','$add2','$add3','$postcode',' phone','$email');";//SQL 语句,把注册信息加入到 customers 表中,但还并未执行
1.3 数据库设计与实现
图 1-3 管理员模块图
数据库在系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实 现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。另 外,合理的数据库结构将非常有利于程序的实现。设计数据库系统时应该首先充分了解用户各个方 面的需求,包括现有的以及将来可能增加的需求。
5
南京晓庄学院
图 1-9 商品实体及属性
图 1-10 管理员实体及属性 下面的图 1-11 显示的是系统 E-R 图:
1.3.3 数据库逻辑结构设计
图 1-10 系统 E-R 图
本系统数据库为:shoppingcart,其中包含了 6 个 MySQL 数据表来实现对数据的存储、调用。 以下为具体数据表模式:
1.3.2 数据库概念结构设计
数据库的 E-R 图反映了实体、实体的属性和实体之间的联系。 下面的图 1-4 至图 1-9 显示的是各个实体以及实体的属性。
图 1-4 管理员实体及属性
图 1-5 用户实体及属性
4
南京晓庄学院
图 1-6 订单实体及属性 图 1-7 订单条目实体及属性
图 1-8 类别实体及属性
6
南京晓庄学院
1、admins 表 admins 表存放管理员 ID、登录名和密码。
表 1-1 admins 表
2、categories 表 Categories 的信息都存放在个表中。 表 1-2
categories 表
3、orderitems 表 Orderitems 表存放所有订单条目的信息。 表 1-3 orderitems 表
南京晓庄学院
网上购物系统设计实验报告
所在院(系): 数学与信息学院 学 号 :08413432 学生姓名 :张飞红 年级专业 : 08 级 计算机 专业 指导教师 :谢静 老师 提交日期 : 2010 年 6 月
南京晓庄学院
网上购物系统的设计与实现
作者:张飞红 指导教师 :谢静
1 系统分析与设计
1.1 需求分析
图 1-2 用户模块图
2
南京晓庄学院
1.2.2 管理员模块
管理员模块:管理员管理模块也就是网站的后台,包括丙个子模块:登录及注销和处理商品与 订单。登录及注销模块是控制管理员登录与注销。处理商品及订单模块的主要工作是负责对商品信 息和订单信息的管理与维护,包括对商品的添加与删除即上架下架功能、订单信息确认与管理功能 等。(模块图如图 1-3 所示)
COOKIE 是客户端(浏览器)支持的存储区,当一个页面访问请求发出时,浏览器会查找是否 有有效的 COOKIE 可用,如果找到的话 COOKIE 中的信息将被一起传递到服务器,这样 PHP 程序 就可以获取和分析 COOKIE 里的数据。客户端出于安全和性能的考虑,不会给 COOKIE 很大的存储 空间,COOKIE 也可以被客户端的其他程序访问和修改,用户也可以禁用 COOKIE 功能,总的来说 并不可靠,但是它可以长期存放在客户端脚本共享里面的数据,适合于存放一些不太重要的个性化 信息。
随着计算机科学的发展,数据库技术在 Internet 中的应用越来越广泛,为广大网络用户提供了 更加周到和人性化的服务。个性化已逐渐成为当今 Web 应用的潮流。本文研究了一种基于数据关联 规则采集技术的用户个性化页面动态生成方案,此方案与现今网上已采用的方案相比,具有用户使 用更简单、反映用户更明显细致等优点。网上购物是电子商务的典型应用之一,网上商场是实现网 上购物的安全、便捷的途径。通过网上商场,用户可以到网上商场浏览选购自己喜欢的商品,安全 地实现网上实时支付,安坐家中便完成购物的过程。对商家而言,通过网上商场可以非常方便地将 自己的商品上网销售,维护十分简单(甚至不需要建立自己的网站)而只须付出低廉的费用。
$prodcatres = mysql_query($prodcatsql);
9
南京晓庄学院
2.1.3 分类导航功能
图 2-1 分页显示
对所有商品进行分类,方便用户查找商品。通过导航来实现产品的分类显示。如图 2-2 所示。
图 2-2 分类导航显示
在 PHP 文件中,我们只需要传递 4 个变量给 Smart 对象:1.记录总数;2.每页记录起始数;3. 每页记录结束数;4.分页标签;
相关文档
最新文档