资源描述
毕 业 设 计中文题目基于PHP的电子商务网站系统设计与实现英文题目Design and implementation of electroniccommerce website based on PHP 院 系:计算机与信息工程学院年级专业: 软件工程(金融服务)姓 名:学 号:指导教师:职 称: 年 月摘要摘 要伴随网络的蓬勃发展,网络已慢慢地参与到人们的生活中,购物的一种主要新方式也就应运而生网上购物。淘宝、阿里巴巴等知名购物网站已成为大部分人喜欢光顾的地方了,并且成为一种休闲娱乐的方式。本系统的是以电子商务为背景,并且利用PHP作为开发语言构建一个网上电子商务系统。基于Windows环境下,数据库开发平台为Mysql,服务器为Apache,以PHP为开发技术的网上电子商务系统。本系统的开发分为两部分:前台功能应用主要是给消费者展现的,主要部分包含了商品的展示、用户的注册、购物车的操作、商品的搜索、个体信息的查看、修改等等的性能模块;而后台开发便是利于管理者的模块,其主要模块为商品的操作、会员的操作、数据的统计、管理员的操作、订单的操作等等模块。经过开发完成这些模块,提供一个便捷、交互式的电子商务平台。关键词:电子商务;网络购物;数据库开发;PHP开发技术I第一章 引言ABSTRACTWith the rapid development of the network, the network has gradually integrated into peoples daily lives, a major new way of shopping is also emerged-Online Shopping. Taobao, Alibaba and other well-known shopping sites are very popular, and become a leisure and entertainment way to many people.The system is based on e-commerce, and using PHP as a development language to build an online e-commerce system. In the Windows system environment, based on the Mysql database development an Apache Internet Information Server by the PHP development technologies. The system is divided into two parts: front part is for consumers, mainly including product display, member registration, shopping cart management, product collection management, add and modify the personal information and so on; back part is used by the administrator management, order management and so on. The implementation of these functions provides a convenient and interactive e-commerce platform.Key Words: e-commerce; online shopping; database development; PHPIV目录目 录第1章 引言11.1 电子商务概述11.2 Web服务器平台与Web平台的动态设计技术11.3 Web平台系统的开发方法11.4 开发背景及开发意义21.4.1 系统的开发背景21.4.2 系统的开发意义2第2章 系统可行性分析32.1技术可行性分析32.2操作可行性分析32.3经济可行性分析32.4本章小结4第3章 需求分析53.1需求分析53.1.1 初步调查53.1.2 用户需求分析53.1.3 系统需求分析53.2系统的开发设计思想63.3本章小结6 第4章 概要设计7 4.1总体设计方案74.1.1 系统的目标74.1.2 划分子系统74.1.3 系统运行环境要求74.1.4 系统结构总体设计84.2数据库设计84.2.1 系统数据库表的设计84.2.2 数据库的连接104.3本章小结11第5章 详细设计125.1前台部分125.1.1 前台总体框架125.1.2 商品展示模块155.1.3 用户管理模块165.1.4 购物车模块185.2后台部分215.2.1 后台总体框架215.2.2 管理员登陆235.2.3 商品管理模块235.2.4 订单管理模块275.2.5 会员管理模块285.2.6 数据管理模块295.2.7 公告管理模块315.3本章小结31第6章 系统测试326.1软件测试概述326.2软件测试的目标326.3软件测试的方法326.3.1 静态测试326.3.2 动态测试326.4 测试项目及结果说明346.5本章小结35第7章 总结36参考文献37致 谢38第一章 引言第1章 引言1.1 电子商务概述伴随着网络带来的前所未有的冲击,给电子商务赋予一个全新的概念:随着信息经济的迅速飞跃,是一种新型的商业经营形式。能够具体的概括为一个恒等式:电子商务=服务器+信息技术+企业业务1。基于网络环境下,B/S的应用模式,得以完成消费者和卖家之间的在网上买卖和在线电子支付的新型经营形式2。由于网络的便利,网上交易能够使得企业公司实现零库存,实现生产-销售一体化,大大地提高了企业的生产销售效率,使得足不出户便购可购买东西的愿望成为现实,极大推动了经济的发展。1.2 Web服务器平台与Web平台的动态设计技术目前流行的三种最常用的Web服务器平台是:基于Apache Http Server的的服务器平台、基于网景的NES的服务器平台、基于微软IIS的服务器平台。Apache Http Server可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl、Python等解释器编译到服务器中。而且PHP与Apache Http Server搭配,是业界公认的黄金组合,因此本系统便是采用Apache Http Server服务器平台。当前比较流行的Web开发技术有:ASP,PHP,JSP,ASP.NET等。ASP在国内比较流行,但是由于ASP的跨平台能力差,而且安全性不好;JSP在国际上比较流行,适合开发一些企业级电子商务系统,但由于其在技术上和成本上要求都比较高,现在在国内运用的还比较少;ASP.NET是Microsoft .NET Framework中的一组用于构建Web应用程序和XML Web Server的技术平台,有一定的复杂性;而PHP是秉承Linux的GMU风格,借助与源码公开,使他迅速成为世界上目前应用最为广泛的站点制作语言之一。加上它和Linux,Apache和Mysql的紧密配合,用PHP编写的代码执行起来会更快、更稳定。用PHP编写的代码,不用改变就可以在不同的Web服务器上、不同的操作系统下运行。相比之下,我们选择了PHP语言来开发本系统。1.3 Web平台系统的开发方法在探讨电子商务的基本原理以及WEB相关开发技术的基础上,我们以软件工程犯法完成了网上商城系统的开发。开发过程中所做的工作包括:整个系统的需求分析、系统设计和所有模块的具体实现、系统测试等。 1.4 开发背景及开发意义1.4.1 系统的开发背景进入21世纪,意味着进入了一个网络时代,人们更追求简单、便捷、快速的生活,因此掀起了一阵“购物潮”,并且十分火热。因此,网上购物也就成为了当今许多网民的休闲娱乐方式。电子商务也就悄然诞生了,商家也就慢慢地依赖起网络带来好处,极大地运用起网络来降低销售本钱、同时高效地宣传企业面貌和他们所销售的商品3。鉴于此,为使广大群众节约更多的时间成本,满足商家的薄利多销需求,便专门构建了电子商务购物网站。1.4.2 系统的开发意义许久以来,人们受限于时间、地域、环境等限制,大部分的买卖都是面对面的销售,如最常见的店面销售,当今也是满火热的一种销售方式。但是这种面对面的买卖活动不仅给公司、企业管理带来许多麻烦,也加大了人力成本、时间成本等方面的成本,大大降低了利润收益4。但在电子商务购物系统上,恰恰解决了这方面的问题,一条线的系统管理:从产品的生产到产品的销售最后到管理客户下的订单给管理者提供了快速的信息处理方式以及给消费者提供安全可靠的个人信息存储5。利用网络的便利,开发出一套对公司、企业产品销售信息进行操作、维护的电子商务系统,是手工管理无法媲美的优点,它可以十分具体、准确地管理商家的销售信息状况。6第2章 系统可行性分析第2章 系统可行性分析2.1技术可行性分析该系统利用PHP+Mysql+Apache黄金组合开展开发活动的,其前台页面采用HTML嵌入PHP进行页面开发,用户进行的界面操作,提示用户没填写完整的信息,界面简约亲切;后台页面采用Bootstrap框架进行页面开发,应用Mysql数据库开发和管理数据库,具备很强的找出并解决错误的能力。Apache服务器即是系统的开发环境,当下是非常流行的,运用起来十分方便,运行起来十分流畅、安全性也非常高。PHP+Mysql+Apache是公认的网站开发黄金组合,在电子商务开发中得到了普遍的运用6,例如:淘宝网、易趣网等。综上所述,本系统所应用的开发技术方面是十分成熟的、可行的。2.2操作可行性分析本系统采用当下十分火热的B/S架构,只要会上网就能操作,不需要掌握那些太过复杂的计算机知识。并且能够在网上对销售信息进行管理,操作起来十分简便。对于管理员来说,也是只要会上网,就可以对商城进行操作。因此,低要求的操作足以证明本系统操作的可行性。2.3经济可行性分析开发的这个网上电子商务系统其实算比较简单的,系统不会算太大,因而开发本钱也不会太高。整个开发由我一个人开发实现,需要一台PC电脑和各种必需软件即可实现所又的开发。因为PC机我原本就有,硬件也不用特地去升级;软件又是在网上不用花费一分钱下载的,整个开发成本是非常便宜的,也为今后进一步完善、维护系统提供非常大的方便。以上属于开发成本,而在用户应用的成本上,只要一台能上网的计算机,并且注册成为会员便可以使用系统的全部功能模块和系统所提供的服务。对计算机硬件也没有太高的要求,对软件也没有什么特别的要求,十分便利于广大用户的运用。所以,该系统在经济方面是十分具备可行性。2.4本章小结一个系统最怕可实施性不强,无论在技术上、操作上还是经济上都得在系统开发之前做好调研工作。因此本章就在技术的可行性上、操作的可行性上和经济的可行性上查阅了大量的资料来保证该系统的可行性。发现在这些方面的可行性上都很可观,技术上十分成熟,操作上简单易懂,经济上更是实惠,因此对于以后的系统开发实施给予了强有力的支持。第3章 需求分析第3章 需求分析3.1需求分析3.1.1 初步调查本次调查主要由我以及几位同学一起通过亲身体验现在各大B2C网站的购物流程,如淘宝网、京东商城、天猫商城等等,熟悉其实现购物的方式,了解其管理的运作方式和管理业务流程,分析现在B2C网上商城的基本运行情况和不足并探讨其需求。同时,参考了相关网站的调查分析报告等。3.1.2 用户需求分析随着互联网的高速发展,Web应用技术也得到了迅速提高。电子商务平台便是基于这些互联技术发展起来的。而基于B/S体系结构的网上购物系统正是电子商务的典型,系统简单却功能强大。由于客户端-服务器端(C/S)应用程序可维护性差,而且对客户端计算机要求功能必须相当强大。为了解决这个缺点,浏览器-服务器(B/S)应用程序应运而生。客户端只要求安装有浏览器,就可以与服务器连接,运行整个应用程序。与此同时,由于服务端与客户端分离,应用程序的版本不管如何更新,都只会在服务端进行,这样客户端可以节省大量资源和时间。近年来,B/S结构越来越受到企业和公司等的喜爱和重用,选择B/S结构是当前电子商务开发的明智之举,能充分适应市场的需求。本系统便是采用B/S结构进行开发。3.1.3 系统需求分析基于PHP技术开发的电子商务网站系统。分为前台模块和后台模块功能:(1) 前台部分主要由用户使用,重要模块包含了用户管理(用户注册、登陆、密码修改、订单查询)、商品展示、购物车管理模块、公告管理模块(2) 后台模块主要由管理员操控,重要模块包含了管理员身份验证、商品管理、用户管理、系统管理。前台商品模块主要有:用户注册、商品浏览、商品订购、购物车、生成订单、订单查询;后台管理主要有:用户管理(查看用户、删除用户)、商品管理(添加商品、修改商品、删除商品、查找商品)、订单管理(查看订单、处理订单、删除订单)、公告管理(查看公告、删除公告、添加公告)、数据管理(查看数据)、管理员管理(修改密码、添加管理员)。通过以上一系列模块的分析得出本电子商务系统应具备如下功能:(1) 能够完成用户基本信息的录入(包含注册、登陆)以及前台与后台能够完成用户个人信息的管理;(2) 能对商品进行搜索;(3) 能通过查看购物车对所选的商品进行筛选、确认,以及通过订单查询对所支付过的信息进行确定;(4) 管理员能利用后台比较快的对商品进行操作(商品的添加、删除、修改、查找)和对网站进行操作(公告设置、修改删除)以及管理员身份的验证。3.2系统的开发设计思想电子商务分为前台部分展示和后台部分管理。前台部分主要是用户使用,用户登录到本系统,可以进行用户注册,浏览商品,然后选择自己所需要的商品,便可选择加入购物车,进行下单购买。后台部分主要是管理员对整个网站系统的管理、维护,通过对商品的操作、用户管理等功能达到对本电子商务网站的管理。电子商务网站的最大特点即是客户和商品的信息量很大,因此如何管理这些信息就显得尤为重要。经过分析,所要设计的系统必须具备以下功能:界面设计简洁、友好,信息准确,功能操作简单,入口快捷,所存储的数据安全、可靠7,系统最大程度的实现易维护性和易操作性。实现模糊搜索功能是十分必要的,极大节约了用户的查找时间。管理者从后台管理公告可以在前台及时显示。系统的运行一个最基本的要求就是稳定,并且安全可靠8。3.3本章小结本章主要是系统开发前的需求分析,为开发做好准备阶段。从一切可能出现的情形、以及系统的完整性都做了比较全面的分析,包括每个模块的功能,系统的可维护性、可管理性,界面友好性等为用户考虑的种种需求都做了十分详细的分析、总结,为今后的开发做好了铺垫。而下章节即是介绍一个系统的雏形。第4章 概要设计4.1总体设计方案4.1.1 系统的目标(1) 提高公司企业用户的经营管理效率,减少管理过程中的重复操作。(2) 简化操作过程,提高资源共享能力,加快查询速度9。4.1.2 划分子系统基于电子商务理论与PHP技术的网上电子商务系统,其分为前台模块功能和后台模块功能10:(1) 前台部分主要供给用户使用,主要包括了用户模块管理(用户注册、登陆)、商品的浏览、购物车的管理以及公告查看;(2) 后台部分主要供给管理员使用,主要包括了管理员身份验证、商品的管理、订单的管理、会员的管理、数据的管理、公告的管理。4.1.3 系统运行环境要求(1)硬件环境要求: 1 GHz以上的处理器 512MB的内存以上(2)软件要求:本系统是在Microsoft Windows7平台下开发的,使用PHP语言开发,后台采用了Mysql Server5.0数据库,Apache作为服务器。国际认证的开发网站的黄金组合,大大提高了数据的处理速度。 操作系统:Windows7系列 数据库:Mysql 5.0 (3)语言种类:简体中文版; (4)显示参数:分辨率1024*768;色彩:256色以上。4.1.4 系统结构总体设计 图 4.1系统结构功能图4.2数据库设计4.2.1 系统数据库表的设计表 4.1管理员信息表(tb_admin)字段名字段数据类型是否为空管理员IDidInt(4)否管理员名称namevarchar(50)否管理员密码pwdvarchar(50)否 表 4.2轮播图信息表(tb_banner)字段名字段数据类型是否为空图片序号idInt(5)否图片picvarchar(50)否I表 4.3商品类型表(tb_class)字段名字段数据类型是否为空商品类型IDidInt(4)否商品类型名称namevarchar(20)否父类IDsupidInt(2)否 表 4.4商品信息表(tb_commo)字段名字段数据类型是否为空商品IDidint(11)否商品信息infovarchar(200)否添加时间addtimedate否商品名称namevarchar(50)否商品图片(小)picsvarchar(200)否商品图片(大)bigpicsvarchar(200)否商品产地areavarchar(50)否商品型号modelvarchar(50)否商品类别classvarchar(50)否商品品牌brandvarchar(50)否商品库存stocksint(4)否商品销售sellint(4)否市场价格m_pricefloat否会员价格v_pricefloat否打折率foldint(2)是是否新品isnewint(1)否是否推荐isnomint(1)否是否限时islimitint(1)否限时时间limittimedate否表 4.5商品订单表(tb_form)字段名字段数据类型是否为空自动编号idint(4)否订单号formidvarchar(125)否商品idcommo_idvarchar(100)否商品名称commo_namevarchar(50)否商品数量commo_numvarchar(100)否商品价格agopricevarchar(50)否商品折率foldvarchar(50)否总金额totalvarchar(50)否订单用户vendeevarchar(50)否I收货人takervarchar(50)否收货地址addressvarchar(200)否手机号码telvarchar(20)否邮编codevarchar(10)否支付方式pay_methodvarchar(20)否送货方式del_methodvarchar(20)否订单时间formtimetimestamp否订单状态stateint(1)否表 4.6商城公告表(tb_public)字段名字段数据类型是否为空公告IDidint(4)否公告标题titlevarchar(50)否公告内容contentmediumtext否发布时间addtimedate否表 4.7用户信息表(tb_user)字段名字段数据类型是否为空用户IDidint(4)否用户名称namevarchar(50)否用户密码passwordvarchar(50)否密保问题questionvarchar(50)否密保答案answervarchar(50)否手机号码telvarchar(20)否消费总额consumefloat否注册时间addtimedate否是否冻结isfreezeint(1)否购物车信息shoppingvarchar(200)否4.2.2 数据库的连接出于安全性的考虑,以及以后修改的便利,我们将与数据库的连接,单独写出来,避免重复编写,浪费资源。因而,本系统对数据库的连接操作单独写成一个PHP文件,命名为conn.php,以后在PHP页面直接调用即可。调用的代码为:include_once conn/conn.php;其连接的关键代码为:29第5章 详细设计PConnect(localhost,root,123456,db_database33) or die(connection error);$conn-Execute(set names gb2312);$ADODB_FETCH_MODE = ADODB_FETCH_BOTH;?4.3本章小结本章把系统的雏形大体构建了起来,包括大体要实现的目标,前后台主要模块要实现的功能,以及运行环境要求,系统总体结构图,把需求分析转化为更加清晰的东西对于系统开发是十分有帮助。当把一整个框架雏形搭建好了以后,便是一些功能的内部实现,于是每个模块的每个字段在本章中我们都有设计数据库表,以及一个很关键的部分数据库的连接,关系着整个系统交互的成败。因此,我认为本章设计是整个系统开发的核心,这部分的成败就决定着整个系统的开发成败。第5章 详细设计5.1前台部分5.1.1 前台总体框架网站前台模块是提供给用户运用的,是系统对外的窗口。主要模块包含了用户注册、登陆,商品浏览,购物车管理,用户信息管理等几个模块(1) 模块功能介绍:用户管理:用户注册、登陆,修改个人信息商品浏览:在网站展示、可以放大查看,加入购物车购物车:添加所想要的商品到购物车,购物车信息修改、下订单订单模块:查询个人订单列表公告模块:可以查询网站的最近公告所发布的信息(2) 前台系统结构图图 5.1前台系统结构图(3) 网站前台首页运行结果图:图 5.2前台首页展示图5.1.2 商品展示模块如果用户对某一商品感兴趣便可点击进去查看商品详情,或咨询客服相关商品的详情,登陆的用户便可加入购物车,并且下订单。图 5.3商品展示图图 5.4商品展示图部分关键代码如下:$sql = select * from tb_commo where id = .$_GETid. order by id desc;$rst = $conn-execute($sql);$arr = $rst-GetArray($rst); $smarty-assign(code,$_GETv);$smarty-assign(title,商品信息);$smarty-assign(arr,$arr0);$smarty-display(showcommo.tpl);5.1.3 用户管理模块(1) 新用户注册 要查询订单、购买商品之前,需要先注册成为网站用户,如下图:图 5.5新用户注册图部分关键代码:$sql=insert into tb_user(name,password,question,answer,realname,card,tel,phone,Email,QQ,code,address,addtime,isfreeze,shopping) ;$sql .= values ($name, $password, $question, $answer, $realname, $card, $tel, $phone, $Email, $QQ, $code, $address,$addtime,0,);$rst = $conn-execute($sql);if($rst = false)echo alert(添加失败);history.back;else$_SESSIONmember = $name;$_SESSIONid = $conn-Insert_ID();echo alert(注册成功!); window.close();window.location.href=index.php;(2) 用户登录用户登录界面,只需输入用户注册的账号、密码、验证码即可登录网站,并更新用户在网站中的状态信息,用户登录界面展示图如下:图 5.6用户登录图部分关键代码:$sql = select * from tb_user where name=.$_GETuser.;$password = $_GETpassword;if(!empty($password)$sql .= and password = .md5($password).;$rst = $conn-execute($sql) or die(execute error);if($rst-RecordCount() = 1)/* 登录所用 */if($rst-fieldsisfreeze != 0)$reback = 3;else$_SESSIONmember = $rst-fieldsname;$_SESSIONid = $rst-fieldsid;$reback = 2;else$reback = 1;5.1.4 购物车模块用户在浏览商品时,如果对某一商品比较满意,或想购买,即可点击“购买”放入购物车里,页面便会跳转到购物车页面,如下图:图 5.7购物车部分关键代码:$sql1 = select id,shopping,name from tb_user where id =.$_SESSIONid;$rst = $conn-execute($sql1);$name = $rst-fieldsname;if($rst-fieldsshopping=|$rst-fieldsshopping = ,|$rst-fieldsshopping = undefined,undefined)echo;echo 购物车中暂时没有商品,赶紧shop起来吧!;echo ;$sql = select shopping from tb_user where id =.$_SESSIONid; $rst-fieldsshopping = ; $a = $rst-fieldsshopping; $addsql = update tb_user set shopping = where id = .$_SESSIONid; $addrst = $conn-execute($addsql);else$tmparr = $rst-GetAssoc();$commarr = array();foreach($tmparr as $value)$tmpnum = explode(,$valueshopping);$shopnum = count($tmpnum);/商品类数$sum = 0;foreach($tmpnum as $key = $vl) $s_commo = explode(,$vl);$sql2 = select id,name,m_price,fold,v_price,pics from tb_commo;$commsql = $sql2. where id = .$s_commo0;$commrst = $conn-execute($commsql);$arr = $commrst-GetArray();/. /var_dump($arr0num); /echo 12344566;$arr0num = $s_commo1;$arr0total = $s_commo1*$arr0m_price;$sum += $arr0total;$commarr$key = $arr0;/var_dump($commarr0);(3) 生成订单如果用户对商品满意,选择好购买数量,点击“去结算”,便会跳转到填写订单页面,如下图:图 5.8填写订单确认信息部分关键代码:$UpdateSQL = $conn-GetUpdateSQL($updrst,$arr);$conn-execute($UpdateSQL);$fid = $conn-Insert_ID();echo alert(支付成功);(4) 订单提交成功页面图 5.9订单提交成功部分关键代码:$id = $_GETfid;$sql = select * from tb_form where id = .$id;$rst = $conn-execute($sql);$formarr=$rst-GetArray();5.2后台部分5.2.1 后台总体框架网站后台主要是便于管理员对于网站的管理和维护,其直接影响到前台功能的基础,其主要模块包括了管理员登陆模块、商品管理模块、订单管理模块、会员管理模块、数据管理模块、公告管理模块。(1)后台功能模块介绍:管理员登陆:验证合法管理员的入口商品管理模块:管理员通过对商品的增删改查实现对前台功能的操作订单管理模块:管理员对用户所提交的订单进行确认、回应、操作会员管理模块:对会员信息的管理,对一些非法会员进行删除操作数据管理模块:对网站的销售额进行一个查看分析,并针对此数据作出相应的销售调整措施公告管理模块:将网站近期的动静发布于前台,让用户了解(2) 后台结构图图 5.10后台系统结构图(3) 后台运行效果图图 5.11后台运行效果图5.2.2 管理员登陆输入正确后台管理地址,进入后台管理员登陆界面,输入正确的账号和密码,系统会根据管理员输入的账号、密码进行校验,成功则进入管理系统,失败则给出提示。管理员登陆界面如下图所示:图 5.12管理员登陆界面5.2.3 商品管理模块(1) 添加商品点击“添加商品”,系统就会打开添加商品界面,管理员即可添加商品保存到数据库,以展示在前台界面上。运行结果如下图:图 5.13添加商品界面部分关键代码如下:$insesql = $conn-GetInsertSQL($rst,$add);if(!$conn-execute($insesql)echo $insesql.;echo $conn-errormsg();elseechoalert(添加成功);location=(addcommo.php);(2) 商品列表该模块用来查看、修改、删除商品。操作界面如下图:图 5.14商品列表界面(3) 商品分类该模块用来对商品进行分类操作,包括更改、添加、删除,操作界面如下图所示:图 5.15商品类别查看界面图 5.16商品类别添加界面部分关键代码:$sql = select name,id from tb_class where supid = 0;$rst = $conn-execute($sql);$smarty-assign(op,$rst-GetMenu2(supid,$blank = false,class=txt);$smarty-display(addtype.tpl);5.2.4 订单管理模块订单管理模式下,订单的状态可以分为:已收款、已发货、已收货,管理员根据接收到的用户信息处理订单状态,页面如下图所示:图 5.17订单操作界面图 5.18查看订单界面图 5.19处理订单状态界面5.2.5 会员管理模块管理员可以查看会员信息,对一些非法或失信的用户可以进行删除或冻结账号,以示提醒,会员管理页面如下图所示:图 5.20会员管理界面图 5.21会员信息详细界面5.2.6 数据管理模块该模块就是记录每天的销售额,让管理员知道营业情况,并根据营业额进行相应的整改、管理措施,数据管理页面如下图所示:图 5.22数据管理界面第6章 系统测试部分关键代码如下:$(#container).highcharts( title: text: 每日销售额, x: -20 /center , subtitle: text: , x: -20 , xAxis: categories: date1 , yAxis: title: text: 销售额 (元) , plotLines: value: 0, width: 1, color: #808080 /分割线 , tooltip: valueSuffix: 元 /显示单位 , legend: layout: vertical, align: right, verticalAlign: middle, borderWidth: 0 , credits: enabled:false / 禁用版权信息 , series: name: 日销售额, data: doll );5.2.7 公告管理模块该模块就是用于在前台显示的公告信息,管理员可删除、添加公告,以让用户知道近期网站的一些动静,公告管理页面如下图所示:图 5.23添加公告界面图 5.24公告操作界面5.3本章小结本章实现即是基于前面章节完成的,有了前面章节的铺垫,本章即是系统开发完成的章节。详细介绍了前后台每个主要模块实现完成了的效果图以及关键代码的展示。第6章 系统测试6.1软件测试概述软件测试时软件开发过程中最关键的阶段。当测试成功时可以尽早发现产品中存在的问题并及时解决。尽在解决可以使软件发布后维护的费用降低。测试的目的是为了保证软件的质量,满足设计的要求和客户的要求;因此软件测试是保证质量的关键步骤,也是对软件的规格说明、设计和编码的最后复审。6.2软件测试的目标测试是指“用意在于发现错误而执行一个程序的过程”,一个成功的测试是指它成功地发现了一个尚未发现的错误。软件进行测试,可以分为单元测试、编码测试和综合测试,单元测试可以测试单一模块的功能并确定其功效;编码测试可以测试各模块之间的连接是否有效;综合测试是对软件最后的审定软件的各项功能是否齐全有效,是否能顺利完成设计的目的。6.3软件测试的方法软件测试方法一般分为动态测试方法与静态测试方法。动态测试方法中又根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。6.3.1 静态测试静态测试是采用人工检测盒计算机辅助静态分析的手段对程序进行检测,方法如下:人工检测:是指不依靠计算机运行程序,而靠人工审查盒评审软件。计算机辅助静态分析:指利用静态分析软件工具对被测试程序进行特性分析,从程序中提取一些信息,来检查可能出错的变量、参数与代码等。6.3.2 动态测试动态测试与静态测试相反,主要是设计一组输入数据,然后通过运行程序来发现错误。一般有两种方法:黑盒测试与白盒测试。6.3.2.1 黑盒测试黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,只检查程序功能是否按照需求规格说明书的规定正常使用,程序时否适当接收输入数据而产生正确的输出信息,并且保持外部信息的完整性。在功能测试中,被测软件的输入域和输出域往往是无限域,因此穷举测试通常是不可行的。必须以某种策略分析软件规格说明,从而得出测试用例集,尽可能全面而又高效地对软件进行测试。下面就说明几种功能测试的方法:a. 等价类划分所谓等价类,就是指某个输入域的集合,集合中的每个输入对揭露程序错误来说是等效的,把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例,这就是等价类划分方法。它是功能测试的基本方法。b. 因果图法因果图是一种形式语言,由自然语言写成的规范转换而成,这种形式语言实际上是一种使用简化记号表示数字逻辑图。因果图发是帮助人们系统地选择一组高效测试用例的方法,此外,它还能指出程序规范中的不完全性和二义性。c. 边值分析实践证明,软件在输入、输出域的边界附近容易出现差错,边界分析是考虑边界条件而选取测试用例的一种功能测试方法。所谓边界条件,是相对于输入和输出等价类直接在其边缘上,稍高于和稍低于其的这些状态条件。边值分析是对等价类划分的有效补充。黑盒测试主要是为了发现以下几类错误:1、 是否有不正确或遗漏的功能?2、 在接口上,输入是否能正确的接受?能否输出正确的结果?3、 是否有数据结构错误或外部信息(例如数据文件)访问错误?6.3.2.2 白盒测试白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。其主要方法有逻辑驱动、基路测试等,主要用于软件验证。白盒法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。白盒法是穷举路径测试。在使用这一方案时,测试者必须全面检查内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径是天文数字。但即使每条路径都测试了仍然可能有错误。第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身错误的程序。第二,穷举路径测试不可能查出程序中因遗漏路径二出错。第三,穷举路劲测试可能发现不了一些与数据相关的错误。与功能测试不同的是,结构测试涉及程序内部结构。尽管用户更倾向于基于程序规格说明的功能测试,但是结构测试能发现潜在的逻辑错误,而这种错误往往是功能测试发现不了的。它们各有利弊,常常结合使用。白盒测试主要是想对程序模块进行如下检查:1、 对程序模块的所有独立的执行路径至少测试一遍。2、 对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。3、 在循环的边界和运行的界限内执行循环体。4、 测试内部数据结构的有效性,等等。基于对整个系统的分析,以及基于前面黑盒、白盒的分析,基于严谨性、准确性简便性分析,本系统采用的是黑盒测试。6.4 测试项目及结果说明测试项目包含了前台部分和后台部分,对前后台的所有功能模块都进行了测试,前台主要包含的模块有:首页展示测试、登陆模块各种可能出现情况的测试、商品分类展示图(包括最新商品、优品热荐、限时商品),以及各个类别商品的展示(包括服装城、乐器城、图书城、电器城、美妆城),购物车(添加商品、删除商品),下订单,以及订单成功的页面显示。而后台主要测试的模块包括:管理员登陆各种可能出现的情况,首页展示测试,类别管理(添加类别、查看类别),商品管理(添加商品、查看商品、查看订单),用户管理(管理员管理、会员管理),公告管理(添加公告、查看公告),数据管理(每日收入)。以上的前、后台的主要测试模块都是通过输入测试数据以及我们所预想的出现数据作比较,有发现些问题。特别是在购物车模块,由于涉及到很多次的数据添加、修改、删除操作,很容易出现数据混乱,也就是代码开发逻辑混乱,所以必须要理清一些有关联的数据。不过大部分都能达到系统目标的基本要求,其中的测试效果截图也均已包含在本论文的各个章节中了。6.5本章小结本章是系统开发完成后比较关键的一部分,即系统测试。也是系统要发布出去最后的严守把关环节。我们用了比较简单的测试方案黑盒子测试,对于不是很大的系统也已经够用了。在分为前后台模块的测试中,截图、预期效果也都有满足我们所期望看到的效果。38第7章 总结第7章 总结通过这段长时间的努力,终于完成了电子商务网站系统,该有的基本功能也都能实现了,这对于我来说是一种小成就,一种激励。但是由于经验、人力等限制因素,对商品的评论、收藏功能并没有实现,这算是一种缺陷、遗憾。不过我一定不会放弃,会尽快把这些缺憾补上。总体来说,在做这个系统前,确实查阅了大量书籍、资料,让我了解了电子商务网站系统在国内外的发展情况,也执行了在软件工程课上学习到的开发软件的几大步骤:需求分析、该要设计、详细设计、编程、调试运行,测试改bug等步骤。在这个过程中,自己确实学到了很多东西,无论是在理论的认识上,还是在实践的操作上,都有了一个质的飞跃。掌握了软件开发的大体过程,也深刻意识到,没有扎实的本领再这个竞争激烈的社会上是很难有立足之地的,通过这次系统开发的锻炼,我体会到了软件开发其实是很辛苦的,尤其是只有我一个进行开发,页面设计就让我思索了好几天,本身也没啥设计天赋,所有模块都是自己编程开发出来的,也深刻认识到要耐得住寂寞,要有十足的耐心和细心,面对一大堆的代码要从容,勇敢面对,慢慢分析,保持十足清晰的头脑。调试,改bug其实也很头疼,但我终究还是克服了过来,毕竟作为一个软件开发者,bug是与你同行的,面对bug要冷静分析,并n遍的改正,当成功地调试后,喜悦便会涌上心头。软件开发还要多多阅读、研究别人的代码,便是对自己节省大量时间方式,也同时实现代码的重用。此外,扎实的基础课基础是如此重要,一门编程语言的扎实掌握,一定要经常实践,才能真正扎实的掌握一门语言。总体上来说,在这一段时间的开发,让我收获颇多,既让我提高了动手能力,也深深认识到自己的许多缺陷之处,同时也多亏了老师的热情指导和同学们的帮忙,使我顺利地完成了毕业设计,在此把最衷心的感谢献给大家。参考文献参考文献1 杨胜强. O2O电子商务模式之我见J.工程技术, 2013(12): 8-9.2 杨天
展开阅读全文