1、清远职业技术学院毕 业 论 文Ecshop 动态网站开发姓 名: 学 号: 指导老师: 系 名: 信息科技系 专 业: 计算机网络技术班 级: 基于 ECSHOP网上商店的实现摘要:网上商城系统开发存在的两个问题就是后台的管理与消费者操作的方便性,系统从数据库开发的基本内容入手,利用PHP编程技术开发了基于Web的在线用户管理模块、在线商品销售模块、在线后台管理模块。实现了最重要的商品销售功能,也就是管理库房中的商品,及管理用户的购物车,从而实现结帐等一系列功能。另外网上商品销售系统还提供给用户查找数据库中商品相关记录的功能。同时,为了保证商品交易的正常进行,还实现了用户的登录注册功能。网上商
2、城系统按照软件工程的要求,对系统进行需求分析,总体设计,详细设计,编码与测试,在此基础上将理论知识与开发技术运用到系统的实现过程当中,完成了网上商城平台的构建。经过大量的系统测试发现,ECshop网站的访问速度较块,安全性较好,有很强的实用性。本论文详细介绍了开发网上商城的全过程,是按软件工程的思想设计的 ,包括需求分析、系统总体设计、系统详细设计等。本系统具有多方面特点:系统功能完备,使用方便简捷,人性化的用户界面,安全保密设置齐全,节省经营成本,大大减少了操作人员的工作负担。关键词:购物车,数据库管理,PHP编程Based on the ECSHOP online store implem
3、entationAbstract: Two problems exist in the online store system development is the background of management and consumer convenience of operation, the system start from the basic contents of the database development, PHP programming techniques to develop a Web-based user management module, online me
4、rchandise sales modules, on-lineAdmin module. The most important commodity sales function, that is, management of goods in the warehouse, and manage the users shopping cart in order to achieve checkout a series of functions. In addition, online merchandise sales system also provides users to find th
5、e function of commodity-related database records. The same time, in order to ensure normal commodity trading, the users login registration function. Online Shopping Mall in accordance with the requirements of software engineering, requirements analysis, conceptual design, detailed design, coding and
6、 testing the system, on the basis of theoretical knowledge and development of technology applied to the system implementation process, and completed the online store platform . Found after a large number of system testing, ECshop site access speed than the block, good security, there is a strong pra
7、ctical.In this thesis describes the whole process of developing an online mall, is asoftware engineering design, including requirements analysis, system design,detailed design.This system has many characteristics: the system is fully functional, easy to usesimple, intuitive user interface, complete
8、set of security and confidentiality, thesavings in operating costs, greatly reducing the workload of the operator.Key words: Shopping cart, database management and PHP programming目 录摘 要 IAbstract .II第 1 章 绪 论 .11.1 课题背景 .11.2 课题的目的和意义 .11.3 国内外概况 .11.4 课题的发展趋势 .2第 2 章 可行性分析 .32.1 社会可行性 .32.2 技术可行性 .
9、32.3 操作可行性 .32.4 系统的技术介绍 .32.4.1 JavaScript 介绍 .32.4.2 MVC 介绍 42.4.3 MySQL 介绍 52.4.4 JDBC 介绍 .62.5 系统开发平台及运行环境 .62.5.1 系统开发平台 62.5.2 运行环境 7第 3 章 需求分析 .83.1 系统需求分析 .83.2 数据库结构分析 .83.3 平台功能分析 .93.4 数据库分析 .103.4.1 ER 图分析 103.4.2 数据库表分析 11第 4 章 系统分析 .144.1 通用文件设计 .144.2 首页设计 .144.3 网站会员设计 .164.3.1 会员注册与
10、登录 164.3.2 会员信息管理 184.4 会员购物设计 .184.4.1 购物车设计 194.4.2 个人信息设计 204.5 生成订单 .21第 5 章 商城后台设计与实现 .225.1 后台登录界面和主页面界面设计 .225.1.1 登录界面的设计 235.1.2 后台主页的设计 235.2 订单信息查看 .235.3 管理 员模块 .245.4 类别资料管理 .255.4.1 商品大类 255.4.2 商品小类 265.5 出版单位资料管理 .265.6 商品资料管理 .275.6.1 浏览商品资料 275.6.2 增加商品资料 285.6.3 修改商品资料 295.7 网站人员的
11、管理 .29第 6 章 系统测试 .306.1 测试目的与目标 .306.2 测试方法 .306.3 测试用例 .316.4 测试结论 .31结 论 .33致 谢 .34参考文献 .35第 1 章 绪 论1.1 课题背景无店铺零售的悄然兴起,是商业经济发展到一定阶段的产物,也是顺应新的消费需求和技术进步的必然结果。上海市商业经济研究中心副主任齐晓斋分析说,与传统的百货商店、连锁超市、大卖场、便利店等有形商铺相比,无店铺零售业态具有一定的先天优势。一是地段。对于传统的有形店铺来说,一是家门店选址、地段的优劣,几乎能够决定其未来经营的成败,而城市中的商业网点资源,尤其是优质商业网点资源通常十分稀缺
12、。无店铺零售则大多不存在地段方面的制约。二是经营成本。借助日益发展的科学技术,无店铺零售通常能够省却从生产到销售过程中的许多环节,从而有效降低经营成本与交易成本,带来消费者、商家双赢的局面。三是风险。对于个人来说,网上商店等无店铺零售业态的准入门槛相对较低,运转比较灵活,即使遇到风险,也有船小好掉头的优势。专家表示,随着社会经济的发展及消费水平的提高,人们希望得到更加方便、更加快捷的购物方式,同时也乐于尝试各种新的购物方式。在这一市场需求的推动下,企业会对商品零售的方式进行创新,而先进的技术给创新提供了重要支撑与平台。1.2 课题的目的和意义鉴于互联网的优势以及对国内外相关电子商务网站现状的研
13、究分析,我决定以基于 Web 的商城电子商务网站开发作为我的毕业设计主题。立足于设计一个在网络平台上运行的集购物、支付和配送等功能于一体的无店铺商城,以小小的力量推动中国互联网的发展。1.3 国内外概况随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上的一股潮流。相信要不了太长有时间,顾客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。以下是根据 CNNIC(中国互联网络信息中心)公布的中国 B2C 电子商务发展报告来进一步分析目前的网上购物的现状。90%选择网上购物的人都认为网上购物节约时间和操作方便,他们分别占46.7%和 44.2
14、%,这说明随着生活节奏的加快,人们越来越希望拥有简单快捷的购物方式网上购物已经逐渐成为一种购物趋势,越来越多的人选择网上购物。消费者对消费要求的日益提高,使得网上商城必须向着专业化迈进,通过提供专业的产品和服务,区分市场。以卓越网和铛铛网为例,日前针对不同的消费者和消费需求,开通了计算机、外语、文学和艺术四个专业商城,这不仅体现了卓越网“最以客户为中心”的经验理念,相信也是中国网上商城未来发展的趋势。尽管网络版权、阅读习惯仍是制约未来网络出版、网上商城发展的障碍,但网络环境给商品出版业带来深刻的革命,已成大势所趋。网上商城和传统店铺都在继续争取商品发行新的利润空间。目前的情况是,商品发行业对网
15、络的利用并不充分,只刚刚涉足电子商务和网站建设,对网络的其他产品,以及网络及时、一对一、跨时间、跨空间等特性,并没有充分加以利用,可以预计,随着网络进一步融入人们的生活,以技术、服务为品牌支撑的网上商城将成为市场的宠儿和业态创新的引领者。1.4 课题的发展趋势随着信息技术广泛、深入地应用到人类社会的各个领域并发挥着越来越重要的作用。计算机软件技术应用于信息管理是发展的必然。作为计算机应用的一部分,充分发挥计算机的优势,将大量复杂的数据交给计算机来处理,有着手工管理所无法比拟的优点。如:查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高信息管理的效率,是真正意义上的
16、合理利用资源,也是企事业管理科学化、正规化,与世界接轨的重要条件。第 2 章 可行性分析可行性分析就是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。2.1 社会可行性随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上的一股潮流。相信要不了太长有时间,顾客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。网上商城系统主要目的
17、是进行网上购物,并且严格按照国家法律法规来进行研究和实践,并无法律和政策方面的限制。2.2 技术可行性本系统采用的是 PHP 编程和 MySQL 开发,由于 PHP 编程和 MySQL 功能强大,而 MySQL 灵活易维护在开发方面具有方便快捷、使用灵活的特点,以及目前的广泛实际应用,因此使用PHP 编程和 MySQL 是开发轻平台的最佳组合从而说明本系统在技术方面可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。2.3 操作可行性目前,大多数计算机都能运行该系统,该系统的安装、调试、运行不会改变原计算机系
18、统的设置和布局,并且系统界面简单,提示信息完整,由相关人员指导便能够方便的操作此软件。2.4 系统的技术介绍2.4.1 PHP 简介PHP 已经成为全球最普及的互联网开发语言之一,PHP 在 2004 年获得了最佳编程语言的称号,到 2010 年,PHP 发展一直呈现稳步上升趋势。至今已被 2000 多万个网站采用。在TIOBE 世界编程语言排行调查报告中,PHP 技术在全球互联网领域的应用将会位居第一。PHP-Hypertext Preprocessor,是一种易于学习和使用的服务器端脚本语言,是生成动态网页的工具之一。它是嵌入 HTML 文件的一种脚本语言。 PHP 是完全免费的,官方网站
19、就可以轻而易举的获得源码。而且它们支持的平台也很多。2.4.2 MySQL 介绍MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL 开发、发布和支持。从计算机可以很好的处理大量的数据以来,数据库管理系统就在计算机处理中和独立应用程序或其他部分应用程序一样扮演着一个重要的角色。MySQL 主要目标是快速、健壮和易用。自1996 年以来,MySQL 已在很多系统中得到了应用,其环境有超过 40 个数据库,包含 10,000 个表,其中 500 多个表超过 7 百万行,这大约有 100 个字节(GB)的关键应用数据。而 MySQL 最主要的是开源的可以免费使用任何人都可以使用和修
20、改该软件,可以从Internet 上下载和使用 MySQL 而不需要支付任何费用。MySQL 服务器是一个快的、可靠的和易于使用的数据库服务器。2.5 系统开发平台及运行环境2.5.1 系统运行环境系统的开发是在 WampServer 环境下进行的。WampServer 是 Apache Web 服务器、PHP 解释器以及 MySQL 数据库的整合软件包。免去了开发人员将时间花费在繁琐的配置环境过程,从而腾出更多精力去做开发。在 windows 下将 Apache+PHP+Mysql 集成环境,拥有简单的图形和菜单安装和配置环境。PHP 扩展、Apache 模块,开启/关闭鼠标点点就搞定,再也
21、不用亲自去修改配置文件了,WAMP 它会去做。再也不用到处询问 php 的安装问题了,wampserver 一切都搞定了。这个软件是完全免费的,可以在其官方网站下载到最新的版本。本文中使用的版本是 WampServer 2.0f(发布日期 2008 年 12 月 16 日) ,其中包括 Apache 2.2.11,PHP 5.2.8,MySQL 5.1.30。第 3 章 需求分析本章主要进行系统需求分析,数据库需求分析和运用 MySql 软件为本系统建立必须的表。3.1 系统需求分析系统需求分析就是指在整个系统开发过程中解决“做什么”的问题,把要解决哪些问题,满足用户哪些具体的信息需求调查分析
22、清楚。本网上商城系统的目的是鉴于互联网的优势以及对国内外相关现状的研究分析,我决定以基于 Web 的商城网站开发作为我的毕业设计主题。立足于设计一个在网络平台上运行的集购物、支付和配送等功能于一体的无店铺商城。系统能实现用户的注册功能、登录功能、商品的查询,订购等功能。该系统基本上具备一个商品销售网站应该具备的功能,该设计项目基本上体现了构建一个动态商务网站所需要的技术。本网站是小型的商品销售网站,消费者可以有目的性的快速找到你所期望的产品,可以直观的浏览商品的价格、内容、生产日期是否符合需要,为现在高效率的生活带来方便。经过前期的深入调查和研究,总结出该平台需要完成的一些具体功能,分析如下:
23、用户管理:能够完成用户基本信息录入的注册和用户基本信息的个人前台与后台管理。管理员管理:能够完成管理员对网站的商品资料(添加大类、添加小类、商品添加、商品审查) 、商品交易(外理订单、发货查询) 、会员管理(会员审查) 、操作管理(管理员添加、管理员审查、管理员退出)的功能。搜索功能:通过商品的名称,商品的分类进行搜索。查询功能:能够通过查看购物车对所选商品进行确定、挑选,通过定单查询对支付费用进行确定。3.2 数据库结构分析数据库的结构分析在数据库开发前期的设计中占很重要的位置,一个好的系统,离不开一个层次清晰,功能完善的后台数据库结构。首先在设计数据库时要分离各个实体和表,一个实体对应一个
24、表;同时,要明确各实体间的关联,明确各实体的属性,以便确定它的字段。下面从实际需求的角度来说明本系统的数据库的结构设计。系统实体分析:系统的实体包括以下几个部分:消费者、商品、网站、其他。实体产生的行为 :实体的行为包括消费者注册成为会员、会员登录、会员资料修改、会员购商品;商品类别、商品资料;网站资料、网站修改布局、网站新闻管理;会员区域管理、配送和支付方式、其他信息管理。在实体的行为中,有许多的数据关联性,如购买商品的记录中有商品信息,有会员的注册资料等等,这些行为的关联性,是我们在设计数据库结构中要注意的问题。3.3 平台功能分析网上购物系统平台主要包括四大功能模块,用户管理、网站布局、
25、管理员管理、搜索等功能模块。其中用户管理模块,主要包括用户注册、用户修改、用户删除等功能;管理员管理主要包括商品资料(添加大类、添加小类、商品添加、商品审查) 、商品交易、会员管理、操作管理(管理员添加、管理员审查、管理员退出)等功能;搜索主要包括(商品名称、商品类别) 。网上购物系统平台总体模块,如图 3.1 所示。图 3.1 平台总体模块图网 上 商 城 系 统用户管理 用户购物 商品管理 权限管理商品类别 订单管理单位管理用户注册 用户修改 商品类别添加 商品类别修改 商品类别删除商品添加 商品修改 商品删除 商品搜索 订单修改 订单删除3.4 数据库分析3.4.1 E-R 图分析建立各
26、表间的关系,除有利于进行连接查询外,还可以大大简化数据库的操作,从而提高工作效率。同时,由于各表间的相互关系的存在,使各表间实施了完整性的原则,可以避免一些误操作。通过建立各表间的关系,就可以有效地管理各表的记录。用户与管理员关系如图3.2所示。商品信息mn用户浏览搜索 管理员索引发布m nnmmn图 3.2 用户与管理员之间关系图管理员实体如图 3.3 所示。图 3.3 管理员信息实体 E-R 图出版单位资料实体如图 3.4 所示。发布单位资料出版单位 ID 发布单位名称 发布单位简称管理员编号账号 权限密码图 3.4 出版单位资料 E-R 图送货方式类型实体如图 3.5 所示。图 3.5
27、送货方式类型 E-R 图商品小类实体如图 3.6 所示。图 3.6 商品小类 E-R 图商品大类实体如图 3.7 所示。图 3.7 商品大类 E-R 图送货方类型ID 送货方式分类号商品小类ID名称 商品大类 ID常用排序号商品大类ID 常用排序号名称3.4.2 数据库表分析根据上面实体和产生的行为,从实际需要出发,同时又考虑各实体间的联系和统一性,设计出如下各表。商品表商品表主要是用于存储商品的基本信息,如商品的名称、商品的价格、商品的类型等,如表3.1所示。表 3.1 商品表字段名称 数据类型 说明GOOD_ID INTEGER 商品 ID 号(主键)GOOD_NAME VARCHAR(4
28、5) 商品名称GOOD_PRICE DOUBLE 商品价格GOOD_TYPE VARCHAR(45) 类型GOOD_PUBLISHTIME DATETIME 发布时间GOOD_BUYCOUNT INTEGER 购买次数GOOD_READCOUNT INTEGER 查询次数GOOD_PUBLISHER VARCHAR(45) 发布者GOOD_COMMENDED TINYINT(1) 是否为推荐商品GOOD_PRICESPE TINYINT(1) 是否为特价商品GOOD_DESC VARCHAR(200) 描述GOOD_TOP TINYINT(1) 是否为精品商品类型表商品类型表主要是用于保存商品
29、的类型,如商品的ID、商品的类型名、以及商品的日期,如表3.2所示。表 3.2 商品类型表字段名称 数据类型 说明TYPE_ID INTEGER 商品类型 IDTYPE_NAME VARCHAR(45) 商品类型名TYPE_TIME DATETIME 添加商品日期3订单表 订单表主要是用于保存用户的购物信息,如订单的ID、购买数量、商品的价格等,如表3.3所示。表 3.3 订单表字段名称 数据类型 说明BOOK_ID INTEGER 订单 ID(主键)GOOD_ID INTEGER 商品 IDGOOD_NUM INTEGER 该商品购买数量GOOD_PRICE DOUBLE 商品价格GOOD_
30、PAYMENT DOUBLE 支付的金额 GUESTRNAME VARCHAR(45) 页数GUEST_PROVINCE VARCHAR(45) 所在省份 PAY_Y TINYINT(1) 是否付款AUDITING TINYINT(1) 是否审核SELLED TINYINT(1) 是否卖出AUDITING_TIME DATETIME 审核时间USER_ID INTEGER 用户的 IDSHOP_TIME DATETIME 购物的时间GOOD_NAME VARCHAR(45) 商品名称4用户表用户表主要是用于保存普通用户和管理员的信息,如用户的ID、用户的名称、用户的密码、注册的时间等,如表3.
31、4所示。表 3.4 用户表字段名称 数据类型 说明USER_ID INTEGER 用户 ID(主键)USER_NAME VARCHAR(45) 用户名称USER_PSW VARCHAR(45) 用户密码USER_TIME DATETIME 注册时间USER_EMAIL VARCHAR(45) 邮箱USER_LOGINCOUNT INTEGER 登陆次数USER_LASTLOGINTIME DATETIME 最后登陆时间USER_LEVER INTEGER 用户级别第 4 章 系统的设计4.1 后台页面的 logo 设计效果图4.2ECSHOP 后台添加订单备注功能效果图4.3 将订单状态设为等
32、待客户确认效果图4.4 自定义商品扩展名功能效果图4.5_多货币解方案的开发效果图4.6 使用 Ajax 更新商品页商品购买数量4.7 订单信息查看会员在前台下订单购买商品,后台的管理人员通过查看订单信息才能给会员配货发商品。因此,查看商品订单信息是后台管理系统的一重要内容,它可以在第一时间查看到新增的购商品订单,并根据订单的内容,进行配商品;同时,还可以通过查看或修改会员订单进程状态,来反馈订单的进程。后台订单处理流程图,如图 5.2 所示。图 5.2 后台购物流程图用户订单 订单处理 订单发货 订单结账 订单删除4.8 类别资料管理将商品分类,是录入商品前首先要做的一项工作。只有进行了很细
33、致的分类,才能便于商品的录入与以后的商品管理。此系统将商品分为两类:大类和小类,其中大类中包括所有的小类,小类是大类的子类。4.8.1 商品大类商品大类将列出商品的整体类别范畴,然后,再由商品的大类,衍生出大类中的小类,从而完成商品的类别划分。在商品大类管理页面中,可以浏览所有的商品类别,并能增加新的大类,还可以对原有的类别进行修改和删除。同时,可以控制某一类别是否出现在前台的类别区。商品大类管理界面是由文件 anclass.java 完成的,在文件中,先将大类界面分为两个部分,左边部分用于修改和删除已经有的大类名称和排序号。右边部分用于增加新的大类名称。两个部分设置两个表单,用于操作人员输入
34、信息。在商品大类管理界面中,单击页面左边部分的“修改”按钮,则向文件saveanclass.java 提交表单信息,该文件接受信息后,根据接收的 action 值和信息的 ID 号,更新信息的内容。 在商品大类管理界面中,单击页面左边部分的“删除”按钮,则向文件saveanclass.java 提交表单信息,该文件接受信息后,删除相应 ID 号的信息。单击页面右边部分的“增加”按钮,则向文件 saveanclass.java 提交表单信息,该文件接受信息后,将信息写入数据库,完成增加大类的功能。4.8.2 商品小类在设置完商品大类后,接下来就是根据商品的大类来划分相应的小类。在设置商品小类页面
35、中,可以根据商品大类增加小类,并对已经有的小类进行修改或者删除。同时,还可以实现某一小类在大类间的移动以及控制各小类间的排列顺序。商品小类的管理的界面是由文件 nclass.java 实现的。在浏览或增加小类时,必须先选择小类所属于的大类,选择并进入某一大类后,页面的左边显示该大类的所有小类,并可以对它们修改或删除,在页面的右边可以增加该大类的小类。在进入某大类商品的小类页面后,单击页面左边的小类“修改”按钮,在将表单信息提交处理前,先通过函数 checkxl(),检测提交信息的完整性,该函数是使用 JavaScript 脚本语言编写的。在确定增加或修改的大类中的小类信息无误后,便将该表单的信
36、息提交给文件 savenclass.java,该文件接受提交的信息,打开数据库记录,增加或更新该小类信息。单击页面左边的小类“ 删除 ”按钮,便将该表单的信息提交给文件savenclass.java,该文件接受提交的信息,根据提交的信息 ID 号,删除相关记录。4.9 出版单位资料管理任何商品,都有出版单位,我们在录入商品资料时,都要填写。为方便录入,先将出版单位的资料输入数据库中,在录入商品资料时,通过列表框,显示全部的出版社,只要进行选择就可以了。这样可以大大提高工作效率,并且保障数据间的完整性、统一性。在出版单位资料管理页面中,分页显示所有已经增加的出版单位,并可以对它们进行修改或删除,
37、同时,还可以新增出版单位和查询出版单位。在实现的界面中,由查询、编辑、增加三部分组成,每部分都是在文件中设置表单,并将表单信息提交给文件自身,自身在接受提交来的信息后,先根据变量 action 的值,来判断是哪部分提交来的信息,然后,根据变量 action 的值,执行相应的语句。出版单位资料管理流程图如图 5.5 所示。 开 始结 束进 入 资 料 管 理添 加 、 修 改 、 删 除录 入 数 据 库否是图 5.5 出版单位资料管理流程图在出版单位管理页面中,输入要查询的出版单位名称,单击“查询”按钮后,便通过设置的表单,将输入的查询字符和 action 的值,提交给文件本身,此时,文件本身
38、接受到的 action 值是 chekpubkey,根据这一值执行响应的程序功能。无论是在出版单位管理页面,还是在查询结果页面中,单击“确认”按钮后,都会将出版单位的 ID 号和 action 的值通过表单提交给文件本身,文件根据ID 号,打开相应的数据库记录,并用接收的值,更新原记录。输入完要增加的出版单位信息后,单击“添加”按钮,先通过表单将要增加的信息提交给文件本身,然后,将信息写入数据库中。在出版单位管理或查询结果页面中,单击“删除”链接,可以将选中的出版单位记录从数据库中删除,由于删除后不能恢复,因此,删除记录应谨慎。5.0 商品资料管理输入商品资料,是后台管理系统的一项日常的工作。
39、所有在前台销售的商品资料,都是通过后台输入的,可见这一功能的重要性。考虑到它的重要性和录入时需要很多详细的信息,我们把商品资料管理分为三个部分:第一部分浏览商品资料,第二部分增加商品资料,第三部分修改原有的商品资料。5.1 浏览商品资料该页面以分页浏览的方式查看全部的商品资料信息,并可以查询某一种商品的详细资料信息。同时还可以对不需要的商品资料,选中后删除。商品管理流程图如图 5.6 所示。 开 始结 束查 询 商 品修 改满 意 否是是 否否图 5.6 商品管理流程图浏览商品的功能是由文件 managebook.java 实现的。在文件中,先调出数据库中的 shop_books 表,分页显示
40、;当查询某一商品时,通过向表单提交关键字信息和查询方式,然后,根据这两个条件在数据库表中找到相匹配的记录,调用显示内容过程 showcontent 显示出来;删除记录时,通过获取打勾选项的 ID号来实现删除功能。5.2 增加商品资料增加商品资料,对于网上商城系统来说,是后台中用的最多的一项,因为每天都会有大量的商品资料录入数据库中,来丰富网站的产品。在增加新的商品资料记录时,在列表框中选择已经分类的类别信息,用户只要选择大类,属于这一大类的小类就出现在小类栏中,这样既方便了录入数据库时的操作,又保证了数据的完整性、统一性。实现商品大类和小类相互关联的主要思路是:先将全部的商品类别保留在一个数组
41、中,然后,通过商品大类列表框选项的改变事件,获取大类 ID 号,根据 ID 号将数组中对应的小类 ID 号和名称赋值给小类列表框,从而实现大类改变,小类也相应变化的功能。当录入新商品时,只要对出版单位进行选择,无须填写,可以提高工作效率,设置文本框,单击它时,出现下拉的列表框,显示全部的出版单位名称,选中选项后,下拉列表框自动隐藏。文本框下面的列表框初始时是隐藏的,当单击文本框时,列表框才出现;选中选项后,将列表框的值赋值给文本框,同时列表框自动隐藏,控制是否隐藏是通过列表框的属性 style 的 display 的值来实现的。5.3 修改商品资料当商品录入完成,写入数据库后,还可以对它进行修
42、改。对原有商品资料的修改,也是商品资料管理的一部分。通过对商品信息的修改,可以很方便地改变折扣、封面,避免了重新录入的麻烦,在浏览商品信息时,单击“商品名”便可以进入该商品的修改状态。其界面和增加商品的界面差不多。5.4 网站人员的管理为确保后台数据系统的安全,进入后台系统必须先登录才能进行操作。因此,首先要在数据库中增加人员记录并设置权限,操作人员依据用户名和密码进入后台系统,在自己的权限内进行操作。需要说明的是:只有具备了管理权限的人员,才能添加、修改、删除网站内容,其他后台人员和不具备这项权限的操作人员,只能修改自己的密码。网站人员管理是一个集增加、修改、删除为一体的综合管理模块。通过这
43、一模块,管理人员完成对所有网站人员的管理。当然只有具备管理权限的人员才能进行这些操作。填写用户名和密码设置权限后,单击“添加” 按钮,便将信息提交给文件savemin.java,它是来完成增加新人员的功能;单击 “修改”链接,便获得该人员的 ID 号,在数据库中找到相应记录,显示在界面右边。修改完成后,单击“保存”按钮,还是将信息提交给文件 saveadmin.java 由它来完成修改操作。删除功能和修改实现方法一样。第 6 章 系统测试6.1 测试目的与目标在此系统进行初步实现之后,开始进行对系统进行测试,找出系统中存在的 Bug,通过测试,用提交的 Bug 报告来为以后软件的改进提供标准和
44、参考,能够在以后的系统改进中找到依据。测试后的软件各模块基本功能能顺利进行,尽可能的提高软件的健壮性。6.2 测试方法系统的测试有两种方法分别为黑盒测试和白盒测试。黑盒测试又称为功能测试,在程序接口进行,只检查程序功能是否能够按照规格说明书的规定正确使用,程序是否能适当地接收输入数据并发生正确的输出信息,而且要能够保持外部信息的完整性。白盒测试又叫结构测试,完全了解程序的结构和处理过程,这种方法按照程序内部的逻辑测试程序,检验程序中每条通路是否都能按照预定要求正确工作。本系统开发过程进行的测试步骤如下:模块测试:也叫单元测试,目的是保证每一个模块作为一个单元能正确运行,本测试所发现的往往是编码
45、和详细设计的错误,主要评价模块的下述五个特点:模块接口,局部数据结构,重要的执行路径,出错处理通路,影响上述各方面特性的边界条件。模块测试主要由代码审查和软件测试两部分组成。集成测试:包括系统测试和子系统测试。集成测试是组装软件的系统技术,主要目标是发现与接口有关的问题。集成测试有两种方法:非渐增式和渐增式,但比较而言,渐增式方法比较好,因为:编写的测试软件较少,开销较小;较早地发现模块间的接口错误;错误位置容易判断;测试更彻底。因此,本系统集成测试采用渐增式测试中的混合法,即对软件结构中较上层使用自顶而下的测试方法,而对软件结构中较下层,使用的是自底向上方法,两者结合,这是对模块较多时测试的
46、一种折衷方法。验收测试:这一步是验证软件的有效性。目的是向未来的用户表明系统能够象预定的那样工作,验收测试一般使用黑盒测试法,验收测试有两种可能的结果:功能和特性与用户的要求有差距;功能和性能与用户要求一致,软件是可以接受的。这个阶段发现的问题往往和需求分析阶段的差距有关。平行运行。所谓平行运行就是同时运行。新开发出来的系统和将被它取代的旧系统,以便比较新旧两个系统的处理结果。目的有:可以在准生产环境中运行新系统而有不冒风险;用户能有一段熟悉新系统的时间;可以验证用户指南和使用手册之类的文档;能够以准生产模式对新系统进行全负荷测试,可以用测试结果验证性能指标。6.4 测试 结论把开始的代码写得
47、越好,它出现的错误也就越少,你也就越能相信所做过的测试是彻底的。系统化测试以一种有序方式设法探测潜在的麻烦位置。同样,毛病最可能出现在边界,这可以通过手工的或者程序的方式检查。自动进行测试是最理想的,用得越多越好,因为机器不会犯错误、不会疲劳、不会用臆想某此实际无法工作的东西能行来欺骗自己。回归测试检查一个程序是否能产生与它们过去相同的输出。在做了小改变之后就测试是一种好技术,能帮助我们将出现问题的范围局部化,因为新问题一般就出现在新代码里面。测试和排错常常被说成是一个阶段,实际上它们根本不是同一件事。简单地说,排错是在你已经知道程序有问题时要做的事情。而测试则是在你在认为程序能工作的情况下,
48、排错是在你已经知道程序有问题时要做的事情。而测试则是在你在认为程序能工作的情况下,为设法打败它而进行的一整套确定的系统化的试验。Edsger Dijkstra 有一个非常有名的说法:测试能够说明程序中有错误,但却不能说明其中没有错误。他的希望是,程序可以通过某种构造过程正确地做出来,这样就不再会有错误了,因此测试也就不必要了。这确实是个美好生活的目标,但是,对今天的实际程序而言,这仍然还只是一个理想。所以应该集中精力讨论如何测试,如何才能够更快地发现程序错误,如何才可以使得工作更有成效、效率更高。结 论通过开发本系统,我较全面的掌握了 PHP 的基本知识和编程技巧,并在开发过程中我更进一步的深
49、入 SQL 语言的使用;以前学过的软件工程知识、数据库原理及操作也得到了充分的应用。 在开发过程中我学到了一些经验:系统分析的好坏将决定着的系统开发成功与否,一份好分析设计将是成功开发主要因素。我们在着手开发之前不要急于编程,先应有较长的时间去把分析做好,做好数据库设计工作,写出相关的开发文档等。然后再开始编写程序代码,这样做到每写一步代码心底有数,有条不絮。当然也有些还需待继续深入地方如:控件的应用等。此外,我还觉得,我个人在这次设计中走了很多弯路。主要是因为平时很少接触软件开发工作,在应用方面缺乏经验,以后还需要更多的努力。对我来说,这次设计的本身所产生的影响,还远远没有结束,我从本次毕业设计中学到了许多课本上没有的知识。从设计任务商品的下达到今天基本实现任务商品中的设计要求。通过自己的学习和努力;通过老师的指导和教育,使我不仅仅在知识水平和解决实际问题的能力上有了很大的提高。还从思想的深处体会到,要把自己的所学变成现实时所将面对的种种难题。系统不免有错误和待改进之处,真诚欢迎各位老师提出宝贵意见。致 谢在论文完成之际,首先要向尊敬的黄华老师表示最真挚的谢意。在论文写作期间,为了保证我们毕业设计的正常进行,学院抽调了优秀的老师指导我进行毕业设计,并且不时地询问我们毕业设计的进展情况