——信工小男人
PHP网上购物系统的设计与实现
摘要
近年来,电子商务网站在全球的发展如火如荼,人们足不出户就能购买到想要的商品,网购已成为人们的一种消费习惯。美国的亚马逊、中国的淘宝等都是成功电商网站的案例。随着商品数量的增长,用户需要一种能为其提供个性化信息的工具,个性化推荐就能满足用户的这种需要。在这种背景下,因此本文基于PHP为客户开发了这样一个个性化电商网站系统。
本系统使用的开发语言为PHP,数据库使用MySQL进行存储。本系统主要分为三个子系统,分别是网站管理系统, 日志采集子系统,新闻公告系统等。网站管理子系统分为前台商城和后台管理两个模块,前台商城主要为用户提供了登录/注册、浏览商品、收藏、加入购物车、下订单和个人中心管理等功能。系统后台分为商品管理、推荐管理、订单管理、折扣管理和用户管理等功能模块。日志采集子系统的主要功能包括日志采集功能、日志管理功能和日志统计功能。推荐子系统的主要功能包括获取用户行为数据、对推荐模型进行管理以及输出推荐结果,其中推荐模型应用了协同过滤的推荐算法为用户提供个性化推荐。本文对PHP电子商务网站系统进行了设计与实现。
在需求分析阶段,多次搜集资料了解情况,了解用户需求。通过需求分析,从用例的角度详细的阐述了每个用例的基本功能,以及系统的非功能性需求分析。在概要设计阶段,首先设计了系统架构,和各子系统的架构。然后根据需求分析将各子系统划分为几大模块,对各模块的功能进行了分析,并通过逻辑设计和概念设计对数据库进行分析。在详细设计里从代码层面对系统进行设计与实现,并通过类图描述类与类、方法与方法之间的调用关系。此系统有良好的实用性,具有良好的可扩展性和安全性,通过网络为用户的网购带来了极大方便。
[关键词]电子商务网站;PHP;MYSQL;CSS;
目录
一、开发背景... 1
二、系统分析... 2
(一)需求分析... 2
(二)可行性分析... 3
三、系统设计... 5
(一)功能详细介绍... 5
(二)系统功能结构... 7
(三)系统开发环境及运行环境... 7
四、数据库设计.. 8
(一)数据库分析... 8
(二)数据库E-R图... 8
(三)数据库表结构... 10
五、PHP网上购物系统的实现... 13
(一)登录模块的实现... 13
(二)管理员管理模块... 16
(三)商品信息管理模块... 18
六、系统测试... 20
(一)测试的目的... 20
(二)测试的过程... 20
(三)测试结论... 25
七、参考文献... 26
PHP网上购物系统的设计与实现
近年来,电子商务网站在全球的发展如火如荼,人们足不出户就能购买到想要的商品,网购已成为人们的一种消费习惯。美国的亚马逊、中国的淘宝等都是成功电商网站的案例。电子商务的定义即是以电子及电子技术为手段,以商务为核心,把原来传统的销售、购物渠道移到互联网上来,打破国家与地区有形无形的壁垒,使生产企业达到全球化,网络化,无形化,个性化、一体化。它以计算机网络为基础,以电子化方式为手段,以商务活动为主体,在法律许可范围内所进行的商务活动过程。
电子商务的主要功能为:广告宣传、咨询洽谈、网上订购、网上支付、电子账户、服务传递、意见征询及交易管理。根据面向对象的不同,可分为七类商务模式:B2B、B2C、C2C、B2M、M2C、B2A(即 B2G>、C2A(即 C2G)。
图 1 主流的电子商务网站-淘宝
本系统基于PHP实现了网上购物系统。本系统主要分为三个子系统,分别是网站管理系统, 日志采集子系统,新闻公告系统等。网站管理子系统分为前台商城和后台管理两个模块,前台商城主要为用户提供了登录/注册、浏览商品、收藏、加入购物车、下订单和个人中心管理等功能。系统后台分为商品管理、推荐管理、订单管理、折扣管理和用户管理等功能模块。日志采集子系统的主要功能包括日志采集功能、日志管理功能和日志统计功能。推荐子系统的主要功能包括获取用户行为数据、对推荐模型进行管理以及输出推荐结果,其中推荐模型应用了协同过滤的推荐算法为用户提供个性化推荐。
故本文是基于PHP与MySQL实现的简单购物商城销售系统。此系统分为前台管理和后台管理,前台管理是友好的操作界面,功能包括:商品展示、商品查看、商品购买、用户注册及登录等功能;后台管理是提供给管理员的,其中包括:商品管理、用户管理、订单管理等。
伴随着Internet的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已不再满足于信息浏览 和发布,而是渴望着能够充分享受网络所带来的更多的便利。的确,客户足不出户便可以方便快捷的选购自己喜欢的商品,这正是网络购物中心为客户带来的好处。
网络商城将传统的商务流程电子化、数字化,一方面以电子流代替了实物流,可以大量减少人力、物力,降低了成本;另一方面突破了时间和空间的限制,使得 交易活动可以在任何时间、任何地点进行,从而大大提高了效率网络商城所具有的 开放性和全球性的特点,为企业创造了更多的贸易机会。网络商城使企业可以以相 近的成本进入全球电子化市场,使得中小企业有可能拥有和大企业一样的信息资源,提高了中小企业的竞争能力。
网络商城重新定义了传统的流通模式,减少了中间环节,使得生产者和消费者的直接交易成为可能,从而在一定程度上改变了整个社会 经济运行的方式。网络商城一方面破除了时空的壁垒,另一方面又提供了丰富的信 息资源,为各种社会经济要素的重新组合提供了更多的可能,这将影响到社会的经 济布局和结构。现在的购物商场成蓬勃向上发展的。
一个网络购物系统,首先我们要保证客户能够很方便进行商品选择,系统应该具有分类选择商品功能,系统要实现购买功能。在系统的后台,管理员能够管理商品,商品分类,以及客户购买订单。因此分析,本系统主要由前台和后台两部分组成,前台为客户端,顾客可以在此处购买商品,后台为商品管理端,实现对商品和订单的管理。
近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。网上购物系统是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些不会经常变动或更新的资源,如公司简介、管理规范和公司制度等等;动态信息是指随时变化的信息,如产品报价,产品更新等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子交易。在现实生活中,网上购物已经成为现代人的一种需求,它的方便快捷是传统购物方式无法比拟的。
一个系统在技术上是否可行,往往从开发的风险,资源的有效性,相关技术的发展等方面来分析。开发风险的大小直接关系到系统的成败。本系统的实现从其所需要实现的功能上来说,现有的比较成熟的技术已基本上能满足其功能需求,而且有很多当前已成功开发并投入使用的网上购物系统可供借鉴。因此,从系统的开发风险来分析,本系统的开发是可行的。在本系统的开发过程中,主要用到开发工具有Visual Studio 2005、SQL.Server 2000、Dreamweaver 8等。这些技术和开发工具都是完善,在实践中多次被运用的,是完全可行的,不会存在技术上的问题。所以从技术环节上来说不存在无法实现的情况发生。
网站的PHP实现技术 PHP是一种服务器端解释执行的脚本语言。如果用户接触过ASP的话,那么对于在HTML页面中嵌入代码应该是比较熟悉了。PHP代码在服务器一端被解释转变成普通的HTML页面内容,送给浏览器一端。这种模式可以用来完成相当复杂的功能。PHP是编程语言和应用程序服务器的结合。它和其他编程语言类似,使用变量存储临时数值,使用操作符处理变量。PHP的真正价值在于它常用于网站的应用程序服务器。
网站的PHP实现技术的特点 在网站的实现技术方面,PHP具有四个主要的特点。
1.快速 PHP是一种非常强大的CGI脚本语言,其语言特点基本上源于C语言,实现方式更像PERL,而其对数据库的内在支持更使之成为ASP的强大对手。同时,PHP是一种服务器内置式的Script语言,语法上混合了C、Java、Perl等语言的、以及PHP式的新语法,执行动态网页比CGI或者Perl更快,这是它的第一个突出的优点。它的出现使得在Unix上更快速地开发动态Web成为现实。它与Javascript等语言的一个区别就是PHP是在服务器执行,客户机所看到的是其在服务器上运行的结果。
2.适合于网络开发领域 对于网络开发领域,PHP是最合适的。因为PHP是被设计用来编写Web应用程序的语言,所以对于为它度身量作的任务—Web站点的开发,无疑最能胜任。按照David Medinets的说法:PHP是编程语言和应用程序服务器的结合。PHP和其他的编程语言类似,使用变量存储临时数值,使用操作符处理变量。PHP的真正价值在于它是一个应用程序服务器。所谓的应用程序服务器,是指一个把几项不同的技术组合为一个完整套件的程序。
3.跨平台 PHP具有在不同操作平台下适用的版本,也提供源代码版本。PHP可支持多种主流与 非主流数据库,包括常用的DBA、dbase、dbm、filePro、Informix、InterBase、 mSQL、Microsoft SQL Server、MySQL、Solid、Sybase、ODBC、Oracle 8、Oracle、Postgre SQL等。 用PHP写出来的Web后端CGI代码,可以很轻易地移植到不同的平台上。
4.功能全面 PHP的功能非常全面,包括英文拼写检查、BC高精确度计算、西洋历法、PDF文件格式、Hyperwave服务器、图形处理、编码与解码功能、杂凑处理、WDDX功能、qmail系统、压缩文件处理、XML解析,除此之外,对于一般语言有的数学运算、时间处理、文件系统、字符串处理、行程处理等功能,它也同样擅长。 PHP支持HTTP的身份认证、Cookie、GIF图像创建,其最有代表性的特点是它的数据库层,这使得编写基于数据库的网页变得非常简单。 PHP也支持POP3、HTTP、SNMP、NNTP、IMAP等协议,并可采用它们的服务进行网络编程。PHP运行环境 PHP具有跨平台特性,可以与多种数据库连接。
网上购物系统是一个比较庞大的系统,拥有会员系统、查询系统、购物流程、会员服务,后台管理等功能模块。系统管理模块的主要功能包括:系统管理员和用户的注册登录以及退出功能,管理员和用户只有通过登录才能进行相关业务操作。对于该网站的功能说明如下:
(1)采取会员制以保证交易的安全性。
(2)开发了强大的搜索及高级查询功能,館够快捷地找到感兴趣的商品。
(3)会员购物流程:浏览、将商品放人购物车、去收银台。每个会员都有自己专用的购物车,可随时订购自己中意的商品、结账完成购物。购物的流程是指导购物车系统程序编写的主要依据。
(4)完善的会员中心服务功能:可随时查看账目明细、订单明细。
(5)设计会员价商品展示,能够显示企业近期所促销的一些会员价商。
(6)人性化的会员与网站留言以及产品评价系统,可以方便会员和管理者的沟通。
(7)后合管理使用本地数据库,保证购物订单安全、区时有效地处理。强大的统计分析功能,便于管理者及时了解财务状况、销售状况。
用户功能介绍:
管理员功能介绍
PHP网上购物系统前台设计结构图,如(图 2)所示:
图 2 前台结构
PHP网上购物系统后台设计结构图,如(图 3)所示:
图 3 后台结构
系统开发平台:Dreamweaver。
系统开发语言:PHP。
数据库管理系统软件:MySQL。
运行平台:Windows10。
浏览器:谷歌浏览器。
根据需要本系统中采用的是MYSQL数据库,系统数据库名称为db_shop。该图(图 4)结构包含本系统所有的数据表。
图 4 数据表
本系统根据分析设计了5个实体分别是用户信息实体、管理员信息实体、商品信息实体、订单实体、订单项实体。
图 5 用户信息实体E-R图
图 6 管理员信息实体E-R图
图 7 商品信息实体E-R图
图 8 订单实体E-R图
图 9 订单项实体E-R图
根据设计好的各个实体E-R图创建数据库的逻辑结构,数据库各表的结构如下。
tb_admin用来存储后台管理员信息表,其中name是管理员名称,pwd是管理员密码。
表 1 tb_admin
tb_dingdan是用来存储会员在网上下的订单的详细内容表。
表 2 tb_dingdan
tb_gonggao是用来保存网站公告的信息表。
表 3 tb_gonggao
tb_leaveword是用户给网站管理着留言的数据表。
表 4 tb_leaveword
tb_pingjia是用户对网上商品的评价表。
表 5 tb_pingjia
tb_shangpin是商品表,购物系统中核心的产品发布,订购时的结算都要调用该数据表的内容。
表 6 tb_shangpin
tb_type是商品的分类表。
表 7 tb_type
tb_user是用来保存网站会员注册用的数据表。
表 8 tb_user
为了系统的安全考虑,登录是必不可少的一个模块。登录模块中用户和管理员的登录功能实现的方式相同,登录的验证方法类似,只是登录后所处的页面不同,用户登录后跳转到客户端页面,管理员登录后跳转到管理端页面。
图 11 用户登录
图 12 登录成功首页面
【核心代码】
left_menu.php文件
网站管理者需要登录后台进行管理网上购物系统,由于涉及很多商业机密,所以需要设计登录用户确认页面,通过输入唯一的用户名和密码登录后台进行管理。本网上购物系统为了方便使用,首先在用户系统首页中直接输入用户名为:“admin”和密码:“admin”,输入登录的地址为“http://localhost:82/shop/admin/login.php”,如图(图 1、图 2)所示。
图 13 后台管理登录页面
图 14 后台管理主界面
【核心代码】
login.php文件
图 15 商品信息管理模块
图 16 商品信息编辑
【核心代码】
商品信息编辑
复选
名称
品牌
型号
剩余
市场价
会员价
卖出
加入时间
操作
>
基于不同的立场,存在两种不同的测试目的,从用户的角度出发,系统代码编写完成后就须进行测试,测试的目标是暴露程序中的错误,测试者通过测试,使程序能朝更够完善方向改正。系统进行功能集成测试,检测系统向整体是否符合需求说明中的功能、业务、安全要求。在测试中,我们主要测试系统是相否能完成主要功能,范围包括:系统登陆验证,功能测试,系统性能分析测试,数据相完整相性测试相以及核心代码复检。测试中我们必须保证测试的运行软件与环境都正常,人员主要分为两种测试,先是自己测试,然后是项目开发小组成员交换进行测试。
打开谷歌浏览器,在地址栏中输入PHP电子商务网站的网址后进入系统首页如图21所示:
图16 PHP电子商务网站首页
点击登录后进入用户登录界面,如下(图 1、图 2)所示:
图 17用户登陆界面
图 18 管理员登陆界面
需要输入合法的用户名和密码才能进行登录进入系统,如用户名和密码正确,点击登录后进入系统首页如(图 3)所示:
图 19 系统首页
图23 PHP电子商务网站首页。
图 20 购物车界面
图 21 购物订单信息
管理员登录测试输入用户名和密码(用户名:admin,密码:admin)登录后进去管理主页面。如下(图 6、图 7)所示。
图 22 管理员登录窗口
图 23 管理员界面
商品管理系统主要包含四个菜单选项:1、增加商品;2、修改商品;3、类别管理;4、添加类别。如下(图 8、图 9)所示。
图 24 商品管理
图 25 添加商品
订单管理系统主要包含两个菜单选项:1、编辑订单;2、查询订单。如下(图 10)所示。
图 26 订单管理
本文首先描述了基于PHP+MySQL的电子商务网站管理系统的软、硬件开发环境,然后给出了本系统中主要使用的数据字典、数据表及各数据表之间的关联图,最后详细介绍了基于PHP+MySQL的电子商务网站管理系统中各个模块的实现算法和主要程序。对系统在功能上和安全上进行了测试,主要测试内容包括各个功能模块,以及用户注册和密码安全等相关测试,最后通过详细的测试验证了系统设计方案的可行性和可靠性。
[1]基于PHP和MySQL的移动学习辅助系统服务器实现研究[J].刘颖,刘淼晶,赵昊宸.中国管理信息化.2018(05).
[2]电子商务网站界面中的用户体验设计研究[J].钱程,唐德红.设计.2016(11).
[3]盛小惠. 陶瓷电子商务系统的分析与设计[D].电子科技大学2012.
[4]狄加利.电子产品B2C电子商务网站规划和设计[D].吉林大学,2010.
[5]杨宗志.动态网页程序设计实例.北京:清华大学出版社,2009:100-112.
(本课程设计主要实现哪些功能?是如何解决设计中遇到的问题的?通过课程设计收获到了什么?如何进行下一步的学习?心得体会等)
通过此次课程设计,使我更加扎实的掌握了PHP动态网页开发方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。
在课程设计过程中,我们持续发现错误,持续改正,持续领悟,持续获取。最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一实行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!
回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,能够说得是苦多于甜,但是能够学到很多很多的东西,同时不但能够巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提升自己的实际动手水平和独立思考的水平。在设计的过程中遇到问题,能够说得是困难重重,但可喜的是最终都得到了解决。
实验过程中,也对团队精神的实行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。