基于WEB的网上购物系统设计.docx
《基于WEB的网上购物系统设计.docx》由会员分享,可在线阅读,更多相关《基于WEB的网上购物系统设计.docx(59页珍藏版)》请在冰豆网上搜索。
基于WEB的网上购物系统设计
基于WEB的网上购物系统设计
【摘要】:
近年来,随着电子商务的普与,网上购物的热潮开始兴起。
由于网上购物本身具有的跨越时空限制的特性,因此,为商业流通领域带来了非同寻常的变革。
网上购物为用户提供了一个非常便利的方式购买商品,通过一个简单的网络操作,便可买到自己心仪的商品,并具有极其完善的售后服务。
网上购物越来越受到网民的认可,当然低廉的价格也是网上购物迅速发展和得以生存的主要原因。
随着网络安全法越来越规范,第三方支付工具迅速发展,中国电子商务的发展速度明显增快,数以千计的购物网站应运而生。
本系统使用PHP技术进行动态页面的设计,后台基于MySQL数据库,是一个中小型的电子商务系统。
系统功能主要包括前台的用户注册与登录,商品搜索,商品分类,商品浏览,商品评论,会员中心,购物车,下订单等,后台的商品管理,栏目管理,订单处理,会员管理等。
【关键词】:
PHP,网上购物系统,MySQL,电子商务
WEB-basedOnlineShoppingSystemDesign
【Abstract】:
Inrecentyears,withthepopularityofe-commerce,onlineshoppingboombegantorise.Becausethecharacteristicsofonlineshoppingacrosstimeandspacelimitsforcommercialcirculationbroughtextraordinarychange.Onlineshoppingprovidesuserswithaveryconvenientwaytopurchase,simplynetworkoperation,youcanbuytheirfavoriteproducts,andisextremelyperfectservice.OnlineshoppingismoreandmorerecognizedbyInternetusers,ofcourse,lowpriceistherapiddevelopmentofonlineshoppingandmaintosurvive.Withmoreandmorestandardizedmethodofnetworksecurity,third-partypaymentinstrumentstherapiddevelopmentofChina'se-commercedevelopmentspeedsignificantlyfaster,thousandsofshoppingsitescontinuetoemerge.
ThesystemusesPHPtechnologyfordynamicpagedesign,thebackgroundisbasedonMySQLdatabaseisasmallandmedium-sizede-commercesystem.Thesystemfeaturesincludefrontoftheuserregistrationandlogin,ProductSearch,Categories,commoditybrowsing,productreviews,membercenter,shoppingcart,underorders,thebackgroundofthecommoditymanagement,partmanagement,orderprocessing,membershipmanagement.
【Keywords】:
PHP,Onlineshoppingsystem,MySQL,E-commerce
第一章绪论
1.1课题背景
随着互联网络技术和信息技术越来越成熟,互联网络规模不断扩大,网络用户数量日益增加。
由中国互联网络信息中心(CNNIC)发表的最新统计报告显示,截至2012年底,中国的网民总数将近6亿,全年总计新增网民数量为5千多万人[1]。
中国网络购物用户规模达到2.42亿,网络购物使用率提升至42.9%,与2011年相比,网购用户增长4807万人,增长率24.8%[3]。
互联网络的应用已经逐步渗透到社会的各行各业。
由于互联网络技术在全球范围内被广泛的使用,因此这也意味着人类社会已经进入“网络经济”的时代。
电子商务是“网络经济”时代最显著的标志,是“网络经济”时代的领头羊。
通过互联网络技术,极大的促进了世界经济的发展,并对国际经济结构产生了一定的影响,原有的时空间隔被打破,传统的产品市场正逐渐被新兴的网络市场所侵蚀,同时这也极大的拉进了生产和消费,大大降低了产品的成本,企业也可以在一个更加公平,公开,公正的市场环境下竞争,非常有利于市场的良性发展,而消费者也可从中获益。
当然,对于一个新兴事物,人们总是要有一个适应的过程,相信电子商务本身具有的价格低廉,不受时空限制,选择性丰富的特性会被消费者慢慢接受并且变成人们的一种购物习惯。
电子商务,英文全称为ElectronicCommerce,简称EC,一般可分为企业对企业(Business-to-Business,简称BtoB),企业对消费者(Business-to-Consumer,简称BtoC),消费者对消费者(Consumer-to-Consumer,简称CtoC),企业对政府(Business-to-Government,简称BtoG)等模式[12]。
对购物网站而言其经营模式主要有两种,一种是C2C的销售模式,以淘宝、易趣、拍拍等为代表;另一种则是B2C的销售模式,以天猫商城、当当网、京东网,亚马逊等为代表。
B2C销售模式基本是以知名企业和商家为主导,信誉度高,商品质量和售后服务有保障,已成为现在人们网络购物的首选。
1.2国内外研究现状
世界上最早发展且市场与技术最成熟的电子商务国家非美国莫属,美国并因此一直引领着世界电子商务的发展。
欧盟电子商务的兴起虽然比美国晚,但因其科技实力雄厚和良好的经济,所以已经有很成熟的电子商务体系,并且在全球电子商务中处于领先地位。
市场发展潜力最大的地区非亚洲莫属,虽然近年来的发展速度并不尽人意,在全球电子商务中所占份额比例也并不理想,但是其发展潜力是不容忽视的。
韩国,拥有着高度发达的互联网络技术,其线上购物市场规模已经超过线下实体商店的市场规模。
同时韩国网络购物在整个市场中的占有率逐年递增,其发展势头势如破竹。
美国网上零售市场主要以B2C模式为主导,极其具有代表性的亚马逊的业绩已经远超C2C的eBay,由此可见美国的B2C市场潜力非凡。
2011年,马云创立的阿里巴巴公司将旗下的淘宝商城正式更名为天猫商城,其目的很明显,就是想将B2C的淘宝商城和C2C的淘宝区分开来运营。
在国内B2C网上商城市场上一直处于领先地位并起着先锋模范的作用非阿里巴巴旗下的天猫商城莫属,但是最新的CNZZ数据显示京东、苏宁、国美等B2C商城已经慢慢的逼近了天猫。
2012年,由于京东商城与苏宁,国美的价格战,使网上商城再次受到更多人们的关注,对传统的销售模式再次敲响了警钟。
1.3网上购物系统的优势
对于消费者来说:
第一,可以完全不受时间、地点的限制,自由的在家“逛商城”;
第二,可以轻松的购买到异国他乡的商品;
第三,相对传统支付而言,网上支付更加安全,便捷;
第四,卖家通过物流公司直接快递送货上门,节约时间;
第五,由于网上商城相比实体店而言少了很多人员雇佣,店面租金等一系列费用,所以其价格比实体店便宜了很多,可谓物美价廉。
第六,可以为人们购买成人用品提供一个方便的渠道,有利也保护个人隐私,避免了去实体店购买的尴尬与难堪。
对于商家来说:
网上销售的库存压力相对于实体店面小,库存基本上不存在积压的问题,极大的降低了经营成本,同时经营规模因不受场地的限制,相比于实体店有更大更广的消费群体。
如今已有越来越多的企业开始选择网上销售,以此提高企业的经济效益和市场竞争力,并且能与时得到市场信息的反馈。
1.4网站支持平台与开发工具的选择
(1)操作系统:
WindowsXP;
(2)Web服务器:
Apache2.2.21;
(3)数据库系统:
MySQL5.5.20;
(4)编程语言:
HTML,CSS,SQL,PHP;
(5)开发工具:
EditPlus3.3.1
(6)浏览器:
Chrome,Firefox,IE
1.5论文结构
本文的具体结构安排如下:
第一章主要介绍了课题的背景,国内外研究现状,网上购物系统的优势以与开发工具的选择。
第二章本设计所涉与到的技术的相关简介。
第三章网上购物系统的分析和总体设计,主要包括了整个商城结构的设计思路和数据库设计。
第四章网站主要功能模块的实现与设计,主要包括了前台用户部分的功能模块设计和后台管理部分的功能模块设计。
第五章网站具体功能模块测试
第六章总结。
对本设计的开发做了总结,指出了其创新之处与存在的不足,并提出了今后需要进一步完善的工作。
第二章系统相关技术简介
2.1PHP技术简介
PHP,是英文超文本预处理语言HypertextPreprocessor的缩写,PHP作为一种通用的开源脚本语言,极其适合web的开发,并可嵌入到HTML中去[5]。
PHP语言的风格类似于C语言,并被广泛地运用[6]。
PHP的语法主要利用了C、Java、Perl以与加上PHP自创的语法,非常易于学习,容易上手。
PHP可以快速地执行动态网页,所以有些web开发者说PHP就是为web而生的。
PHP主要是运行在服务器端的,通过服务器对php代码进行解析然后返回结果展示到客户端的浏览器页面上。
PHP从最初1.0版本,那时PHP的正式名称为“PersonalHomePage”,由其名称可以看出当时开发php的作者拉斯姆斯·勒多夫的目的只是为了要维护个人网页。
到现在的PHP5.4.0,经历了多个版本。
其中PHP5强化了面向对象,并使用了第二代的zendengine,并同时强化了XML的WEB服务支持。
2.2ASP、JSP、PHP三种主流技术比较
ASP是美国微软(microsoft)所开发的脚本语言,其全称为ActiveServerPages,语法跟VisualBASIC类似。
虽然ASP本身简单易用,容易上手,但是其安全性与平台应用性一直限制着其发展,ASP只能用于微软自己开发的平台上,而在微软以外的平台上并没有得到很好的支持。
JSP,其英文全称为JavaServerPage,是Sun公司推出的web开发语言。
JSP语言继承了java的特性,在模块应用与扩展上有java很好的支持,但因其语言复杂性,不容易上手,而且其一般应用于大型的网站,对于中小型网站所占份额并不大。
JSP的安全性是三种web开发语言中最好的,但是其开发周期长,效率低,而且平台的应用性并没有像PHP那样有那么好的支持。
PHP是一种被广泛应用的开源通用脚本语言,尤其适用于Web开发并可嵌入HTML中去。
它主要借鉴了C,Java和Perl语言的语法特性,并加上PHP自己的特性,使Web开发人员能够快速编写程序代码,并动态的生成HTML页面。
PHP还有很完美的数据库支持,目前大多数的数据库,php都有很完善的模块支持。
PHP是完全免费的,源代码也是完全开放的[8],甚至你可以通过修改PHP的核心代码自己添加扩展功能。
PHP相比于ASP和JSP是最容易上手的,而且因其良好的平台支持性与安全性,目前全球70%的网站是采用PHP开发的。
综上所述,鉴于本站是一个中小型的电子商务网站,以与未来平台应用性的问题,本设计选择了PHP作为网站的开发语言。
2.3PHP的优势
(1)开放的源代码
PHP的所有源代码都可以从官方网站下载到。
(2)PHP是免费的
PHP是不收取任何版权费用的,所以你不必担心以后会产生任何的费用纠纷。
(3)PHP的快捷性
简单易学,非常适合初学者,程序开发快,运行速度也快。
(4)跨平台性强
PHP可以运行于多种平台,其平台运用性是最广的。
(5)效率高
由于PHP本身有个垃圾回收机制,所以就注定其消耗很少的资源。
(6)图像处理
PHP图像处理默认使用GD2,其拥有强大的图像处理功能。
(7)面向对象
在php5中,大大强化了面向对象[10],并使用第二代的zendengine。
2.4Apache简介
Apache的英文全称是ApacheHTTPServer。
虽然,服务器软件已经有很多,如Tomcat,IBMWebSphere等,但是Apache在web服务器中还是占据着主导地位。
Apachec跟php一样都有着良好的跨平台的应用性与可移植性,其源代码也是开放的,并由一支开放的开发队伍对Apache进行不断的改进,它可以通过简单的API扩展,将PHP/Python等解释器编译到服务器中。
因其对PHP有很好的支持,所以本设计的服务器选择便是用Apache。
2.5操作系统简介
PHP在操作系统上的选择性有很多,如Linux、Unix或Windows等平台。
微软公司所开发的Windows系统在中国普与率极高,几乎占据这整个中国PC平台的市场份额。
因其良好的用户体验,便捷的操作,易于掌握等诸多优点受到了很多用户的青睐。
本设计就是基于Windows系统环境进行程序开发。
2.6MySQL,SQLServer,Oracle三种主流数据库的比较
2.6.1MySQL
1、优点
(1)普通版本免费,商用版要收费。
(2)体积非常小,系统资源占用少。
(3)支持多种存储引擎[2]。
(4)查询速度快
(5)开源
2、缺点
(1)功能较少。
2.6.2SQLServer
1、优点
(1)客户服务器体系结构。
(2)图形化管理界面,操作简单,易于上手。
(3)拥有丰富的编程接口。
(4)可以跨越多种平台。
2、缺点
(1)需要经过美国微软授权,且价格昂贵。
(2)运行速度没有MySQL快。
2.6.3Oracle
1、优点
(1)可用性高。
(2)高性能。
(3)集成安全性。
(4)管理网格、网格控制、管理所有数据。
(5)自管理数据库。
(6)数据移动方便。
2、缺点
(1)系统庞杂。
(2)价格昂贵。
(3)安装麻烦,配置复杂,操作性高,不易上手。
2.7数据库的选择
本设计选择的是MySQL数据库,由于MySQL与Apache,PHP的组合常用于搭建动态网站,并已成为经典web开发组合。
MySQL与PHP,Apache一样是开源,免费的[11],虽然也有商业的收费版,但是进行一般的中小型网站开发,用普通版绰绰有余。
并且其体积小,速度快,性能好,占用系统资源少等众多优点,相比于其它数据库MySQL搭配PHP和Apache可组成更加良好的开发环境,有利于本设计的开发效率。
第三章网上购物系统的分析和总体设计
3.1系统设计目标
整个网上购物系统分为前台和后台两部分[4]。
前台包括商城首页,商品浏览,商品查询,商品分类,用户评论,会员中心,用户注册与登录,购物车,商品浏览历史,下订单等;后台包括商品管理,用户评论管理,订单管理,会员管理,商品回收,商品分类等。
3.2系统需求分析
系统开发的第一步是对需求进行分析,在此阶段主要描述系统的需求。
需求分析的目的是找出开发者与需求者之间存在的一种平衡。
通过需求分析来明确本设计需要服务于那些用户,对这些用户提供什么服务,用户对本设计的需求等。
由本设计的出发点,本系统须有基本的电子商务功能,并且网站前后台风格设计应以简洁大方为主,操作上,以简单便捷为主,宗旨以用户体验为主,以便可以吸引更多的在线客户。
对于本站后台管理系统,应以方便管理员管理操作为主。
综上,将系统的功能划分为用户功能需求和管理员功能需求两部分。
如下所列:
(1)用户功能需求
A.商品浏览:
浏览所有上架的商品,查看每件商品的详情
B.商品搜索:
提供商品检索功能,以便用户可以快速的找到自己想要的商品
C.商品分类:
对商品进行详细的分类,以便用户通过商品分类快速定位到自己想要购买的某类商品
D.注册与登录:
用户可以在本网站进行注册,以达到更好的体验,以与享受到本站的某些优惠活动,当然用户也可以不需要注册,以匿名的形式在本站进行商品的购买,这也是本站的创新之处
E.购物车:
用户选择购买某种商品时会将商品的相关信息,如商品名称,商品属性和购买数量记录到相应的购物车中,用户查看自己的购物车,可以对其中的某种商品再做相应的修改,如数量的修改,即更新购物车功能,或者将其移出购物车,还有一键清空购物车的功能,同时,用户还可以返回浏览商品继续选购其他商品,最后到购物车中确定是否购买
F.会员中心:
当您是本站会员,并登录本站时,您会发现网站首页的右上方有个会员中心的链接,在这个会员中心里,用户可以进行密码的修改,查看订单的详细信息,取消订单,查看自己对商品的评论,并可以删除评论
G.商品浏览历史:
用户在本站进行商品浏览时,本站的浏览历史会记录下用户最新浏览的五条商品信息,用户如果不想看到自己的浏览历史,还可以清空自己的浏览历史,以便用户更好的体验
H.下单:
用户通过购物车点击结算按钮,来到下单页面,填写收货地址,用户联系方式等,选择支付方式后,提交订单,整个下单过程结束
(2)管理员功能需求
A.商品管理:
查看商品的详细信息,添加商品,将商品加入回收站,编辑商品,添加商品分类,删除商品分类,编辑商品分类
B.用户评论管理:
查看用户评论,回复用户评论
C.订单管理:
查看订单详情,更新订单状态,删除订单
D.会员管理:
查看会员信息,查看会员订单,删除会员
E.商品回收站:
还原商品,彻底删除商品
3.3系统功能概述
本设计主要实现网上购物的整个流程[14]。
用户进入商城,可以选择注册为本站会员或者以游客的身份在本站浏览查看商品,用户可以通过网站上的商品搜索框或头部的导航栏,迅速查找到自己心仪的商品,并浏览商品的详细信息;如果是找到想要购买的商品时,用户可以通过加入购物车按钮,把想购买的商品先放进购物车里,然后可以选择结算或者继续购买商品;当用户挑完所有商品后,可以在购物车中修改所购买的商品的数量,通过在购物车里进行商品数量的更改,便可以大量购买同一种商品,从而节约了很多不必要的时间。
用户可以通过点击购物车中去结算按钮,跳转到下单页面,填写完必要信息后,选择支付方式,并提交订单,最终生成订单。
本站会员可以在自己的会员中心看到与自己相关的订单信息,而游客就没有会员中心这个功能,但是游客和会员一样能在本网站上购物,这也是本站的创新之处,使商城更加的人性化,因为现在互联网普与率那么高,而网站数量更是剧增,所以如果用户每到一个商城网站购买商品都要注册一个用户名的话,有的用户会因为嫌麻烦而直接去已经注册过的网站购物,这样就流失掉了这部分的用户,所以这次本系统就做了这次创新,力求让客户得到更好的体验。
用户在本站系统的整个购物流程如下图3-1所示
图3-1购物流程图
3.4网站系统设计
3.4.1系统设计思想
1、页面模块化
本商城在前台界面设计上都采用了模块化处理思想[13],把前台页面中相同的部分提取出来独立成为一个模块,通常称这些模块为公共模块。
本商城前台设计了2个公共模块,其中包括:
header.html页头模块和footer.html页尾模块。
为了使商城的所有界面具有统一的风格,把页头和页尾的代码分开写,分别放到front文件中,在其他页面中使用时,只要利用include指令将它们包含进来即可。
将页面相同部分做模块化处理,不仅可以简化页面重复的代码,而且有利于以后的维护与管理,这是web开发中常用的方法。
2、MVC设计模式
MVC,其英文全称为ModelViewController,中文解释为模型-视图-控制器[10]。
MVC是程序开发中的一种设计模式,其主要功能是将整个网站分为model模块,view模块和控制器模块,对网站进行详细的分化,各个模块分别对应其应该处理的事件。
MVC模式可以极大的提高程序代码的重用性,有利于网站后期的维护与扩展,并降低了开发成本,因此MVC模式受到了很多PHP开发者的青睐。
但是MVC不适合小型的网站开发,因为小型网站本身结构并不复杂,而且功能也不多,如果用MVC模式进行开发的话只会增加其开发难度。
而本设计是一个电子商务型的购物网站,其网站结构复杂,功能多,所以采用MVC模式进行开发。
工作原理如图3-2所示
图3-2MVC原理图
3.4.2系统功能模块划分
1、商城前台系统功能模块图,如图3-3所示
图3-3前台系统功能模块图
2、商城后台系统功能模块图,如图3-4所示
图3-4后台系统功能模块图
3.5网站数据库设计
数据库对一个电子商务网站来讲,有着极其重要的地位,因为数据库中存储的数据就是商家的投资,相当于实体店中的实体商品。
数据库结构设计的好坏将直接影响商城的运作效率,继而对商城的盈利产生影响。
设计数据库系统时应先充分了解到用户对各个方面的需求,包括现有的与未来可能添加的新需求[15]。
数据库设计一般包括如下几个步骤。
(1)需求分析。
(2)概念结构设计。
(3)逻辑结构设计。
3.5.1数据库需求分析与设计
数据库的设计是以数据库管理系统为基础的,目前较为流行的的数据库管理系统主要有Mysql、SQLServer、Oracle等[11]。
根据用户的需求分析和系统的总体分析,本系统采用MySQL数据库管理系统。
在MySQL数据库管理系统中建立名称为mall的数据库。
这个数据库需要提供各种信息的增删改查功能。
在mall数据库中,根据项目需求建立相应的数据表,如下:
1、admin(管理员表):
存储管理员的基本信息,包括管理员的名称,密码,email,注册时间等
2、user(用户表):
存储用户的基本信息,包括用户名,密码,email,注册时间,上次登录时间等
3、goods(商品信息表):
存储商品的基本信息,包括商品货号,商品名,商品所对应栏目的id,本店价,市场价,库存,商品点击量,商品重量,商品简介,商品详细说明,商品小图,商品大图,商品原始图,上架状态,商品属性,添加时间等
4、category(商品栏目表):
存储商品栏目的基本信息,包括栏目名,栏目简介等
5、orderinfo(订单信息表):
存储订单的基本信息,包括订单号,用户名,配送区域,收货的详细地址,邮编,收货人姓名,电话,手机号码,标志性建筑,最佳送货时间,订单总金额,支付方式等
6、ordergoods(订单商品表):
存储订单所对应的商品的详细信息,包括订单号,商品名,商品数,本店价,商品价格小计,商品属性等
7、comment(用户评论表):
存储用户对商品的评论信息,包括用户名,email,评论内容,评论时间,评价等级,评论的商品等
3.5.2数据库概念结构设计
根据上面的设计规划出的实体有:
管理员实体,用户信息实体,商品信息实体,栏目信息实体,订单信息实体,订单商品实体,用户评论实体。
实体之间的E-R图,如图3-5所示
图3-5实体之间的E-R图
管理员信息实体的E-R图,如图3-6所示
图3-6管理员信息实体的E-R图
用户信息实体的