




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南 京 晓 庄 学 院网上购物系统设计实验报告所在院(系): 数学与信息学院学ﻩ号 :08413432学生姓名ﻩ:张飞红年级专业 :ﻩ08ﻩ级ﻩ计算机ﻩ专业指导教师 :谢静ﻩ 老师提交日期ﻩ:ﻩ2023年 6ﻩ月南京晓庄学院网上购物系统的设计与实现作者:张飞红 指导教师ﻩ:谢静1ﻩ系统分析与设计需求分析随着计算机科学的发展,ﻩ数据库技术在 Internet ﻩ中的应用越来越广泛, 为广大网络用户提供了更加周到和人性化的服务。个性化已逐渐成为当今 应用的潮流。本文研究了一种基于数据关联规则采集技术的用户个性化页面动态生成方案,此方案与现今网上已采用的方案相比,具有用户使用更简朴、反映用户更明显细致等优点。网上购物是电子商务的典型应用之一,网上商场是实现网上购物的安全、便捷的途径。通过网上商场,用户可以到网上商场浏览选购自己喜欢的商品,安全地实现网上实时支付,安坐家中便完毕购物的过程。对商家而言,通过网上商场可以非常方便地将自己的商品上网销售,维护十分简朴(甚至不需要建立自己的网站)而只须付出低廉的费用。网络是网上商店的存在载体。网上商店向网上购物者传递商品信息,网上购物者通过网上商店进香商品和款项的交易。服装鞋帽商城采用ﻩ技术和SQL数据库,以 DreamweaverMX2023为开发环境进行商城站点的构建,并选择ﻩ作为服务器,进行系统分析,为将来进一步的实行打下一个坚实的技术基础。此系统分为前台管理和后台管理。前台管理是和谐的操作界面,供用户浏览、查询使用。涉及:浏览商品、查询商品、订购商品、购物车、用户维护等功能;后台管理是提供应管理员的,其中包括:商品管理、用户管理、订单管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公准备效率。通过前期的进一步调查和研究,总结出该系统需要完毕的一些具体功能,分析如下:用户管理:可以完毕用户基本信息录入的注册、登录和注销。管理呗管理:可以完毕管理员对网站的商品订单的解决。总体设计根据网上购物的功能需求,进行系统分析设计。系统功能模块图如图ﻩ1-1所示:1南京晓庄学院用户模块
图1-1系统功能模块图用户模块又分为三个子模块:注册、登录及注销模板;选择商品并添加到购物车模块;付款结算模块。一方面,用户登录后可以查看购物网站上所有的商品,根据个人爱好、需要,选择商品,用户可以通过查看主页上显示的商品进行选择,也可通过度类即菜单栏的导航进行选择商品。然后,选择好商品后,可通过添加到购物车,在购物车后也可以再继续购物或者删除不需要的商品。最后就是进行付款结算。结算完毕后,注销用户,以便下次继续使用(模块图如图ﻩ1-2所示。图1-2用户模块图2南京晓庄学院管理员模块管理员模块:管理员管理模块也就是网站的后台,涉及丙个子模块:登录及注销和解决商品与订单。登录及注销模块是控制管理员登录与注销。解决商品及订单模块的重要工作是负责对商品信息和订单信息的管理与维护,涉及对商品的添加与删除即上架下架功能、订单信息确认与管理功能(模块图如图1-3所示)数据库设计与实现
图1-3 管理员模块图数据库在系统中占有非常重要的地位,数据库结构设计的好坏将直接相应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。此外,合理的数据库结构将非常有助于程序的实现。设计数据库系统时应当一方面充足了解用户各个方面的需求,涉及现有的以及将来也许增长的需求。数据库设计原则在动态网站的设计中,数据库设计的重要性不言而喻。假如设计不妥ﻩ查询起来就非常吃力,程序的性能也会受到影响。无论使用的是ﻩMySQL或者Oracle数据库,通过进行正规化的表格设计,可以令代码更具可读性,更容易扩展,从而也会提高应用的性能。1、规范命名所有的库名、表名、域名必须遵循统一的命名规则,并进行必要说明,以方便设计、维护、查询。2、控制字段的引用在设计时,可以选择适当的数据库设计管理工具,以方便开发人员的分布式设计和数据小组的集中审核管理。采用统一的命名规则,假如设计的字段已经存在,可直接引用;否则,应重新设计。3南京晓庄学院3、库表反复控制在设计过程中,假如发现大部分字段都已存在,开发人员应怀疑所设计的库表是否已存在。通过对字段所在库表及相应设计人员的查询,可以确认库表是否的确反复。4、并发控制设计中应进行并发控制,即对于同一个库表,在同一时间只有一个人有控制权,其别人只能进行查询。5、必要的讨论数据库设计完毕后,应与指导老师进行讨论,通过讨论来熟悉数据库,从而对设计中存在的问题进行控制或从中获取数据库设计的必要信息。数据库概念结构设计数据库的ﻩE-R图反映了实体、实体的属性和实体之间的联系。下面的图ﻩ1-4至图1-9显示的是各个实体以及实体的属性。图1-4管理员实体及属性图1-5 用户实体及属性4南京晓庄学院图1-6订单实体及属性图1-7ﻩ订单条目实体及属性图1-8类别实体及属性5南京晓庄学院图1-9商品实体及属性图1-10管理员实体及属性下面的图ﻩ1-11显示的是系统ﻩE-R图:数据库逻辑结构设计ﻮ图1-10系统E-R图本系统数据库为:ﻩshoppingcart,其中包含了 6个MySQL数据表来实现对数据的存储、调用。以下为具体数据表模式:⑴ﻩ【admins(username、⑵ 【categories(id、⑶ 【customers(id、、、add1、、、email)⑷ 【orderitems(idorder_id、product_id、quantity)⑸ 【orders(id、customer_id、、payment_type、、、total)⑹ 【products(idcat_id、、descriptionprice)其中,用下划线和粗体ﻩ标记的属性为表的主键属性。各表的具体设计如表ﻩ4-1~表4-9所示。根据E-R图,设计每张表的变量名,变量的类型及主键。6南京晓庄学院、adminsﻩ表admins表存放管理员 ID、登录名和密码。表1-1ﻩadmins表、categoriesﻩ表Categoriesﻩ的信息都存放在个表中。表1-2 categories 表、orderitems 表Orderitems 表存放所有订单条目的信息。表1-3 orderitems表、orders 表Orders表存放订单的具体信息。表1-4ﻩordersﻩ表7南京晓庄学院5、products表Products表存放商品的名称,描述,图片,价格等。表1-5ﻩproducts表、custermers 表Custermersﻩ表存放教师上传的文献的信息。表1-6ﻩcustemers表本章小结本章介绍了网上购物系统的总体构想,以及实现的重要功能。根据需求分析对模块功能作了较为具体的介绍。最后介绍了数据库的设计原则,分析了数据库的概念与逻辑结构设计。8南京晓庄学院系统功能的具体实现2.1ﻩ系统功能设计在系统进行整体设计的过程中,将系统中的公用代码部分分离了出来,避免了系统中出现代码冗余,同时也提高了系统的开发效率。2.1.1 数据分页功能当要显示的数据比较多,一个页面无法完全显示,此时便需要进行数据的分页解决(如图 1。用以下代码实现的简朴分页,非常简朴,具体实现重要代码如下:$pagesize=3;$valididﻩ=$_GET['id'];$sql="SELECT*FROM products";$result=mysql_query($sql);$number=mysql_num_rows($result);//取记录的条数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=($1)*$pagesize;//计算起始位置$prodcatsql="select*fromﻩproductslimitﻩ$start,$pagesize";//根据页码计算出起始位置ﻩ$start取值,以为起点,个数为ﻩ$pagesize$prodcatres=mysql_query($prodcatsql);9南京晓庄学院分类导航功能
图2-1分页显示对所有商品进行分类,方便用户查找商品。通过导航来实现产品的分类显示。如图 2-2所示。图2-2分类导航显示在文献中,我们只需要传递ﻩ4个变量给 Smart对象:1.记录总数;2.每页记录起始数;3.每页记录结束数;4.分页标签;会话管理用户可以根据身份进行选择登录,在系统用户登录的时候,用户需要输入用户名和密码及验证码进行数据库登录验证。用户必须输入用户名和密码以及验证码。否则将弹出对话框进行提醒。在进行用户身份辨认时,需要对用户的一些信息参数进行传递与保存,这就要使用到 SESSION或者COOKIE技术。服务器端的 SESSION和客户端的ﻩCOOKIE是两种重要的参数传递与保存的技术,它们有各自的优点与局限性,但都在 Web系统中发挥着很大的作用。SESSION:在计算机中是存在服务器端的,在网络应用中,称为ﻩ会话“会话”可以简朴的理解为浏览器与服务器的一次对话过程,这个过程从第一次服务器收到浏览器的页面请求开始到最后一次请求为止。ﻩ一次会话相应着一个ﻩ SESSION,每个访问者都有自己的一个ﻩSESSION,所以像用户信息等全局性的数据非常适合放在ﻩSESSION中,以供整个访问过程使用。COOKIE 是客户端(浏览器)支持的存储区,当一个页面访问请求发出时,浏览器会查找是否有有效的ﻩCOOKIEﻩ可用,假如找到的话ﻩCOOKIEﻩ中的信息将被一起传递到服务器,这样ﻩ PHP程序就可以获取和分析ﻩCOOKIE里的数据。客户端出于安全和性能的考虑, 不会给COOKIEﻩ很大的存储空间,COOKIE也可以被客户端的其他程序访问和修改,用户也可以禁用 COOKIEﻩ功能,总的来说并不可靠,但是它可以长期存放在客户端脚本共享里面的数据,适合于存放一些不太重要的个性化信息。SESSION与COOKIE不同的是它不需要每次都要从客户端传来,ﻩ 它的数据保存在服务器上,ﻩ也不会自传给客户端。根据客户端发来的页面请求中的ﻩ SESSIONID来查找是否有相应的ﻩSESSION可用。假如有,则为ﻩPHP提供这个 SESSION,假如没有则创建一个供ﻩPHP使用。直到这次会话的结束,SESSION才会被清除。鉴于此本系统采用的是ﻩSEEION技术。10南京晓庄学院用户模块功能的实现用户注册在注册用户时,需要填写用户名,密码,地址,邮编,电话号码,以及邮箱等(每个信息都不能为空,否则将弹出对话框进行提醒)ﻩ。填写完提交后写入数据库并判断是否注册成功。重要代码如下:if(empty($username))//判断用户名是否为空。die("<script>alert('用户名不能为空 ');location.href='register.php'</script>");//ﻩ弹出对话提醒并回到注册phone','$email');";//SQLﻩ语句,把注册信息加入到 customers表中,但还并未执行if(mysql_query($sql))// 只有通过 mysql_query()才干在数据库上执行操作, 使用if来判断是否已经执行来决定注册成功与否。图2-3用户注册用户登录在系统用户登录的时候,用户需要输入用户名和密码及验证码进行数据库登录验证。界面如图2-4所示,用户必须输入用户名和密码以及验证码。否则将弹出对话框进行提醒。原代码如下所示:$loginsql="select*from customerswhereusername='".$_POST['userBox']."'ANDpassword='".$_POST['passBox']."'";$loginres=mysql_query($loginsql);$numrows=mysql_num_rows($loginres);11南京晓庄学院if(empty($numrows))die("<script>alert('用户名或密码不对的 ');location.href='login.php'</script>");购物车功能ﻮ图2-4用户登录在系统中,购物车是整个网上购物系统中最核心的部分。重要功能是用户选择商品添加到购物车,并能在下次登录时显示购物车中的待结算的商品(界面如图ﻩ2-5和图2-6所示。核心代码具体如下:$sql="INSERTINTOorders(customer_id,registered,date,status)VALUES("ﻩ.$_SESSION['SESS_USERID'] .",1,NOW(),'pay')";mysql_query($sql);//把用户号等信息写入数据库中session_register("SESS_ORDERNUM");//ﻩ生成会话变量$_SESSION['SESS_ORDERNUM']ﻩ=mysql_insert_id();把订单ID附给会话变量$itemsql="INSERTINTOorderitems(order_id,product_id,quantity)VALUES(" .$_SESSION['SESS_ORDERNUM']ﻩ.",".$validid."," .$_POST['amountBox']ﻩ.")";mysql_query($itemsql);require("showcart.php");图2-5添加商品到购物车$quantitytotal=$itemsrow['price']ﻩ*$itemsrow['quantity']; //产品的总价格12南京晓庄学院echo"<tr>";echo"<td><img src='./image/"$itemsrow['image'] ."'width='50'alt='".$itemrows['image'] ."'></td>";echo"<td>".$itemsrow['name']."</td>";//获取商品名称echo"<td>".$itemsrow['quantity']ﻩ."</td>";echo"<td><strong>&pound;"ﻩ.sprintf('%.2f',ﻩ$itemsrow['price'])ﻩ."</strong></td>";echo"<td><strong>&pound;" .sprintf('%.2f',$quantitytotal) ."</strong></td>";echo"<td>[<ahref='".$config_basedir."delete.php?id=".$itemsrow['itemid']ﻩ."'>X</a>]</td>";echo"</tr>";$total=$total+$quantitytotal;$totalsql="updateorderssettotal=".$total."whereid=".$_SESSION['SESS_ORDERNUM'];$totalres=mysql_query($totalsql);//更新总价格结算功能
图2-6购物车显示用户选择好商品后,加入购物车后,就可以进行结算了。结算分两种,一种是网上银行,另一种是货到付款。如下图 2-7所示:13南京晓庄学院用户注销
图2-7结算用户完毕商品选购及结算后,就可以注销用户以便不被其别人使用,等下使用时再进行登录。只要通过如下代码,注销会话变量。session_unregister("SESS_LOGGEDIN");session_unregister("SESS_USERNAME");session_unregister("SESS_USERID");管理员模块功能的实现管理员登录管理员
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年漫画面试试题题库及答案
- 2025年网络售货员试题及答案
- 2025年io面试题及答案
- 2025年小蜗拖鞋测试题及答案
- 2025年食堂餐饮考试题及答案
- 2025年心理咨询师题库及答案
- 2025年科考试题练习及答案
- 2025年多发性硬化试题及答案
- 2025年sql数据库理论试题及答案
- 2025年无法道歉的试题及答案
- 2025年国家粮食和物资储备局科学研究院招聘1人历年自考难、易点模拟试卷(共500题附带答案详解)
- 2024年江苏省扬州市中考数学试卷(附答案)
- 民法典继承篇课件
- 《铁路技术管理规程》(普速铁路部分)
- 喷漆车间火灾应急预案
- 路灯设施维修工程施工组织设计方案
- T-CTSS 3-2024 茶艺职业技能竞赛技术规程
- 领导到单位调研流程安排
- 瑞幸咖啡与星巴克咖啡商业模式比较研究
- 统编版语文二年级下册-25黄帝的传说-教学课件多篇
- 钳工技能-锉配
评论
0/150
提交评论