二十一世纪是一个集数字化、网络化、信息化为特征的时代。在这个以网络为核心的社会里,越来越多的人接受了电子商务这种便捷、快速的交易方式,因而网上订餐的推出很快受到了大家的欢迎。
我组利用PHP(Hypertext Preprocessor)语言,结合MYSQL数据库,基于web实现了一个简单的网上订餐系统。该系统主要分为前台和后台两大模块。前台管理主要面向用户,包括用户注册、菜品查询、订餐购物车等子模块;后台管理主要面向管理员,包括菜品管理,订单管理,用户管理等子模块,该系统基本上能满足网上订餐的需要。
本系统完成的主要功能:用户通过浏览主页面,可以实现会员的注册,可以浏览菜品的信息图片与价格;用户注册登陆后,可通过购物车来完成订餐过程。管理员有最高权限,可以进行菜品信息的添加、修改和删除,可以对用户订单进行管理以及对用户信息进行管理。
在本系统开发设计过程中,我组采用了B/S(Browser/Server)结构,与传统的C/S模式相比,B/S结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,这样就大大简化了客户端电脑载荷,使用和维护比传统模式更经济方便,易于保证数据的一致性,有较好的网络扩展性。
关键词: 网上订餐系统;B/S;PHP;MYSQL
第1章 引言... 1
1.1 课题的研究背景及意义... 1
第2章 开发环境及配置介绍... 2
2.1 PHP语言简介... 2
2.2 PHP运行环境介绍... 3
2.3 MySQL数据库简介... 3
2.3 EclipsePHP Studio编辑软件简介... 4
2.4 物理配置信息... 4
第3章 系统需求分析... 5
3.1 用户需求分析... 5
3.1 性能需求分析... 6
3.3 产品质量需求分析... 7
3.4 可行性分析... 7
第4章 网上订餐系统总体设计... 8
4.1 系统结构分析及设计... 8
4.2 系统流程详细分析及设计... 9
4.3 系统数据库设计... 13
第5章 网上订餐系统详细设计及实现... 16
5.1 系统前台模块实现... 16
5.2 系统后台模块实现... 19
第6章 系统测试... 21
6.1 系统测试的目的和方法... 21
6.2 测试结果及问题解决... 22
结 论... 22
参考文献... 23
贸易的全球化和Internet网络的全球化特征使两者很自然地走到了一起,形成了如今风靡全球的电子商务(E-Comnerce)。商务活动在客户、厂商及其他交易主体之间进行并以信息为依托,而商务网站正是这种活动的具体实现平台。越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系等。
其中网上订餐系统是电子商务网站的一种,随着人们对生活质量的追求不断提高,随着人们工作、学习、生活节奏的加快,网上订餐业务在中国开始盛行。通过网上订餐系统,顾客可以在办公室、家中等待预订好的饭菜,大大降低了顾客们的时间,还可满足不同顾客的多种口味,在精力和经济上都得到了实惠。随着网络的普及,网上订餐将成为人们的生活方式之一,网上订餐系统的完善和便捷将是现代社会的必然需求。
位于广西工学院校内的佳和快餐店订餐形式是电话订餐,忙时难以接通电话,导致送餐不及时;该店没有专门的网站,客户不能及时了解菜单的变化和更新,每次只能靠人工一遍一遍的重复菜名,这样既浪费了不必要的人工,也浪费了顾客的时间,延长了后续订餐客户的等待时间。
为此,我组以佳和快餐为例开发了一个小型网上订餐系统,以此改善快餐店的服务质量及经济效益。
该系统使用PHP语言和MYSQL数据库开发, 实现了网上订餐系统的动态管理,使得网上订餐的管理更加及时、高效,提高了工作效率。该网上订餐系统主要包括用户管理,订餐管理,菜品管理等几大功能模块,实现了一个简单的网上订餐的需要。
系统基于B/S(Browser/Server,浏览器/客户端)模式实现,在 Myeclipse平台开发实现,主要实现对网上订餐的使用、需求以及用户订餐的动态管理等。随着Internet/Intranet技术的兴起,将原本在单机或本地局域网上运行的数据库系统移植到因特网中,即开发基于B/S模式的新一代MIS(Management Information System,管理信息系统)系统,正成为技术发展的趋势。本系统采用B/S体系结构进行设计开发,保证了系统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的。
PHP是超级文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格类似于C语言,目前被很多的网站编程人员广泛的运用。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。 PHP 最初是1994年Rasmus Lerdorf创建的,在1995年中,PHP2.0发布了。第二版定名为PHP/FI(Form Interpreter)。PHP/FI加入了对MYSQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用 PHP/FI;时间到了1997年中,使用PHP/FI的网站数字超过五万个。而在1997年中,开始了第三版的开发计划,开发小组加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名为PHP3。2000年,PHP4.0又问世了,其中增加了许多新的特性。本系统的开发语言使用了PHP5.0.
相对于其他脚本语言PHP有以下优点:
(1)数据库连接
PHP可以编译成具有与许多数据库相连接的函数。PHP与MySQL是现在绝佳的组合。还可以自己编写外围的函数取间接存取数据库。通过这样的途径当更换使用的数据库时,可以轻松的更改编码以适应这样的变化。PHPLIB就是最常用的可以提供一般事务需要的一系列基库。
(2)可扩展性
PHP已进入了一个高速发展的时期。PHP提供了类和对象。基于web的编程工作非常需要面向对象编程能力。PHP支持构造器、提取类等。
(3)可伸缩性
传统上网页的交互作用是通过CGI来实现的。CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。解决方法就是将经常用来编写CGI程序的语言的解释器编译进web服务器(比如mod_perl,JSP)。内嵌的PHP可以具有更高的可伸缩性。
(4)执行效率高
PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。
Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。
Apache源于NCSAhttpd服务器,经过多次修改后,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,成为世界上最流行的Web服务器软件之一。因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
AppServ是PHP网页架站工具组合包,可以将网络上免费的架站资源重新包装成单一的安装程序。它提供了简易、快速的PHP运行环境的搭建机制。
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。
MySQL的特点:
(1)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
(2)支持多种操作系统
(3)为多种编程语言提供了API。这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
(4)支持多线程,充分利用CPU资源
(5)优化的SQL查询算法,有效地提高查询速度
(6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名
(7).提供用于管理、检查、优化数据库操作的管理工具
(8).可以处理拥有上千万条记录的大型数据库
与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
EclipsePHP Studio (以下简称:EPP ) 是一个大型PHP项目开发编译器,基于Eclipse底层开发而来,并且集成了JDK,免除处了安装配置的麻烦,一次安装即可使用,无需配置。此编译器为PHP编译器,辅助PHP代码的开发和调试,集成了代码高亮,函数跟踪,时时纠错等功能。同时还增加了协作开发版本服务器功能:SVN,CVS。 内嵌浏览器可以在调试简单代码时时浏览。不仅支持php,也支持其他网络语言像html、xhtml、xml、css和javascript、java、perl、python等。
系统使用数据库名为dborderonline,用户名为admin,密码为admin,其中http:// 127.0.0.1/orderonline/为服务器IP地址,端口为3306。
本系统使用Apache作为Web服务器,采用PHP作为服务器端脚本解释器,配合MySQL 5.0数据库进行设计。由于这三个软件都是遵循GPL的开放源码软件,因此使用这种方式为建立一个稳定、免费的网站系统大大降低了开发成本。开发时前台设计使用eclipsePHP,后台数据库使用MySQL,开发的操作系统使用目前应用最广泛的windows xp sp3。
佳和快餐店组织结构图:
部门和岗位的主要职责:
负责本店的质量,坚持质量标准。
负责召开例会,监督营业期间员工的工作情况。
处理顾客对本店服务的各种意见。
与管理部经理协调,做好管理工作。
与厨务部经理协调,提高菜品质量和增加菜品品种。
协调财务部、行政部、业务部的工作。
负责对财务部、行政部、业务部的工作进行监督,并上报给总经理。
主要协助采购部、厨师长、后勤部的工作。
对采购部、厨师长、后勤部的工作进行监督管理。
把下部门的工作意见、建议和工作情况向总经理反映。
协调厨师、帮厨、服务员的工作。
对其下属进行监督管理,做好厨房内的工作。
希望通过网上订餐系统订餐的客户具有以下特征:
1、主要居住或工作在离餐厅不太远的地方
2、主要是工作繁忙者或单身人士
3、属于经常上网的人群
4、认为快餐菜式品种丰富,适合多种口味
该系统实现一个基于Web的网上订餐系统,使用该系统的人分为两个角色:
一个是客户,主要进行订餐操作,包括注册会员,登陆系统,在线选择要订购的餐菜并提交订单等。作为网上订餐系统的主要使用者,他们是餐厅的顾客,能进行网上订餐功能的使用和操作,但是不能对系统进行管理;
另一个是系统管理员,主要是进行系统的日常管理和维护,包括菜品管理、用户管理和订单管理等。作为企业内部对系统的主要管理者,他们是餐厅的工作人员,能对系统进行实时的管理和维护,相对客户,拥有更多的系统处理权限。
该系统在性能功能上应达到如下需求:
1. 操作简单、界面友好: 完全控件式的页面布局,使得菜品,资讯等信息的录入工作更简便,许多选项包括餐厅信息,菜品信息等只需要点击鼠标就可以完成,网站管理的基本信息录入、浏览、删除、修改等方面都大体实现;另外,跟踪出现的提示信息能让客户随时清楚自己的操作情况。
2. 即时可见:对客户订餐信息的处理(包括录入、删除)将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能;
3. 系统运行应该快速、稳定、高效和可靠;
4. 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。
主要质量属性 |
详细要求 |
正确性 |
按照需求正确执行任务,完成各个模块的相应要求。 |
健壮性 |
具有较高的容错能力和恢复能力。 |
可靠性 |
故障发生率每运行1000小时低于3次 |
性能,效率 |
软件的输出结果更新周期应该与系统的信息更新周期相同。在网络情况良好的情况下,3秒内可响应用户请求。 |
易用性 |
易理解性:软件研制过程中形成的所有文档语言简练、前后一致、易于理解以及语句无歧义。 |
安全性 |
防止软件受到意外或蓄意的存取、使用、修改、毁坏或泄密的软件属性其数据应能集中存放于总部的数据库服务器,客户端不保存任何业务数据和数据库连接信息,也不应进行什么数据同步. |
可扩展性 |
能方便的进行二次开发,满足对功能的扩充或提高并能提高相应的安全控制。 |
兼容性 |
不易与其他软件起冲突。 |
可移植性 |
可方便移植到其他系统环境中正常运行。 |
随着经济的快速发展,B2C电子商务越来越受到人们的关注。网上订餐类网站,已经如雨后春笋般的出现在了个大城市。特别在公司,企业内部,团体订餐已经成为了趋势。同时,随着全国人民的精神、物质和文化生活高度的提高,人们已经不在仅仅停留在吃饱的程度,不但要吃饱,还要吃好,而且口味也越来越挑剔,正因为如此网络订餐业务的出现,正迎合了这些人的口味,他们不但省去了自己做饭的麻烦,而且也能寻找和发现新的菜品,品尝不同风格的菜品,网络订餐业务在中国有着极大的发展空间以及良好的背景。而当代大学生,白领工作人士作为社会中的重要群体,他们对饮食的要求都在不断提高,饮食在他们生活中起着重要作用。因此,面向大学生和都市白领人士的网络订餐网站的设计有着良好的现实意义。
此次课程设计决定利用PHP和MySQL技术设计网上订餐系统。PHP可以创建和运用动态、交互的WEB服务器应用程序。同时,PHP具有跨平台跨服务器的优点。MySQL虽相对其他流行的数据库而言规模小、功能有限,但是对于快餐行业的中小型企业来说,MySQL提供的功能已非常强大,而且MySQL是开放源码软件,因此可以大大降低总体拥有成本。综合以上两点分析,开发网上订餐系统具有一定的现实意义,从技术上和经济上均是可行的。
网上订餐系统的模型结构如下图所示:
客户端 浏览器 |
Web层 |
业务层 |
数据访问层 |
系统配置 |
数 据库 |
客户端 浏览器 |
客户端 浏览器 |
图4.11 网上订餐系统模型结构图
从前面的需求分析中得知,可以将功能分为前台和后台两类,因此模块也分为两大类:前台模块(管理员模块)和后台模块(用户模块)。
如下为系统模块总图及细分图:
网上订餐管理系统 |
前台模块(用户) |
后台模块(管理员) |
订单管理 |
菜品管理 |
用户订餐 |
菜品浏览 |
注册登陆 |
用户管理 |
图4.12 系统模块总图
网上订餐系统 |
用户模块 |
管理员模块 |
用户模块 |
菜品浏览 购买 |
查看购物情况
|
放入购物车
|
会员注册 登陆 |
确认提交订单
|
图4.13网上订餐系统总框架图 图4.14用户模块细分图
管理员模块 |
菜品管理 |
用户管理 |
查询用户 |
确认订单 |
查看订单 |
删除用户 |
订单管理 |
添加菜式 |
修改菜式 |
删除菜式 |
打印订单 |
图4.15 管理员模块细分图
4.2 系统流程详细分析及设计
前台业务流程分析
1.注册登陆:系统将判断该用户是否注册,如果是,则可直接填写订单;否则,提示用户登记注册;用户注册后,后台将根据用户信息送餐。
2. 浏览与选择餐饮信息:登录系统后则可挑选餐饮(可增加、删除、修改自己所选的餐饮),网站提供餐饮信息列表;
3. 提交订单:已选购的餐饮信息和用户信息将一起提交给后台;
4. 收货并付款:网上的每一份订单都将实时存入后台数据库,后台操作人员通过电话及其他方式确认,确认后将及时实施审核该订单:向用户送货,货到付款,完成网上交易。
图4.21前台业务流程图
后台业务流程分析
1. 登陆:管理员进入后台系统必须有自己的权限,如果是,则可以进入后台系统,对后台进行操作,否则不能登录;
2. 后台管理:①及时显示用户订餐信息,及用户订餐执行情况;②对未处理的订单,进行订单打印,提交给服务员;③及时增加、删除、更新网站上的菜品种;④进行用户管理。
图4.22 后台业务流程图
该系统数据流程比较简单,管理员可以添加菜品信息,这些信息用户是可以浏览的,但是用户没有权限对这些信息进行修改,这些信息对于用户而言是单向的。对于订单信息,管理员可以查看、删除及确认订单;还可添加删除用户信息。
系统的数据流图(包括顶层和第二层数据流程图)如下所示:
图4.23 顶层数据流程图
图4.24第二层数据流程图
数据字典描述如下:
外部实体的定义如下:
外部实体编号 |
外部实体名称 |
简述 |
输出的数据流 |
S1 |
用户 |
订购食品的用户 |
D01、D02、D03、D04 |
S2 |
管理员 |
管理食品、订单、用户信息的管理员 |
D08、D09、D10、D11 |
处理的定义如下:
处理编号 |
处理名称 |
简述 |
输入的数据流 |
输出的数据流 |
P2.1 |
登陆系统 |
登陆订餐的系统 |
D01、D08 |
|
P2.2 |
注册 |
用户注册 |
D02 |
D05 |
P2.3 |
浏览食品 |
用户浏览食品 |
D03 |
D06 |
P2.4 |
下订单 |
用户下订单 |
D04 |
D07 |
P2.5 |
订单管理 |
管理订单 |
D09 |
D12、D13、D14 |
P2.6 |
订单查看 |
管理员查看订单 |
D12 |
D15 |
P2.7 |
订单删除 |
管理员删除订单 |
D13 |
D16 |
P2.8 |
销售统计查看 |
查看销售统计 |
D14 |
D17 |
P2.9 |
食品管理 |
管理员管理食品 |
D10 |
D18、D19、D20 |
P2.10 |
食品删除 |
管理员删除食品 |
D18 |
D21 |
P2.11 |
食品查看 |
管理员查看食品 |
D19 |
D22 |
P2.12 |
食品添加 |
管理员添加食品 |
D20 |
D23 |
P2.13 |
用户管理 |
管理员管理用户 |
D11 |
D24、D25 |
P2.14 |
用户删除 |
管理员删除用户 |
D24 |
D26 |
P2.15 |
用户添加 |
管理员添加用户 |
D25 |
D27 |
数据存储定义如下:
数据存储编号 |
数据存储名称 |
简述 |
F1 |
订单信息表 |
存放订单的信息 |
F2 |
食品信息表 |
存放食品的信息 |
F3 |
用户信息表 |
存放用户的信息 |
数据流的定义(部分):
数据流编号 |
数据流名称 |
简述 |
数据流来源 |
数据流去向 |
D07 |
订单 |
用户开出的订单 |
用户 |
订单信息表 |
D21 |
食品删除单 |
管理员要删除的食品名单 |
管理员 |
食品信息表 |
D27 |
用户添加单 |
管理员要添加的用户名单 |
管理员 |
用户信息表 |
系统流程图如下:
4.3 系统数据库设计
通过实体-关系模型(Entity-Relationship Module,简称E-R模型)对数据库结构设计。E-R图提供了表示实体、属性和联系的方法,是用来描述现实世界的概念模型。计算机专业人员与非计算机专业人员可以通过具体体现实际的E-R图对参与实体及其属性,实体间的联系了解更透彻,能更好地进行交流合作。
设计数据库表(共8个)
1、管理员表:管理员不多,但登陆需要管理员名和密码,管理员数据表中必须包含用户名(username)、密码(password)两个信息,id编号作为唯一标识(主键)。
列名 |
数据类型 |
长度 |
主键 |
id |
tinyint |
10 |
是 |
username |
varchar |
10 |
否 |
password |
varchar |
10 |
否 |
表4.31 admins表
2、类别表:主要用于菜单类别罗列,id编号为唯一标识 ,只需类别名字。
列名 |
数据类型 |
长度 |
主键 |
id |
tinyint |
10 |
是 |
name |
varchar |
20 |
否 |
表4.31 categories表
3、客户信息表:客户名字,地址,电话号码,电子邮件等重要有关信息。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
forename |
varchar |
50 |
否 |
surname |
varchar |
50 |
否 |
add1 |
varchar |
50 |
否 |
add2 |
varchar |
50 |
否 |
add3 |
varchar |
50 |
否 |
postcode |
varchar |
10 |
否 |
phone |
varchar |
20 |
否 |
|
varchar |
100 |
否 |
registered |
tinyit |
10 |
否 |
表4.31 customers表
4、详细地址信息表:为方便联系订餐顾客使用另一联系地址而设的表。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
forename |
varchar |
50 |
否 |
surname |
varchar |
50 |
否 |
add1 |
varchar |
50 |
否 |
add2 |
varchar |
50 |
否 |
add3 |
varchar |
50 |
否 |
postcode |
varchar |
10 |
否 |
phone |
varchar |
20 |
否 |
|
varchar |
100 |
否 |
表4.31 delivery_addressesx表
5、登陆信息表:客户登陆需要用户名和密码。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
customer_id |
int |
10 |
否 |
username |
varchar |
10 |
否 |
password |
varchar |
10 |
否 |
表4.31 logins表
6、订餐情况表:购物车内订餐情况查询。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
order_id |
int |
10 |
否 |
product_id |
int |
10 |
否 |
quantity |
int |
10 |
否 |
表4.31 orderitems表
7、订单信息表:订餐情况和用户信息关系表。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
customer_id |
int |
10 |
否 |
registered |
int |
10 |
否 |
delivery_add_id |
int |
10 |
否 |
payment_type |
int |
10 |
否 |
date |
datetime |
10 |
否 |
status |
tinyint |
10 |
否 |
session |
varchar |
50 |
否 |
total |
float |
10 |
否 |
表4.31 orders表
8、菜品信息表:菜式编号,名字,描述,价格等。
列名 |
数据类型 |
长度 |
主键 |
id |
int |
10 |
是 |
cat_id |
tinyint |
10 |
否 |
name |
varchar |
100 |
否 |
description |
text |
100 |
否 |
image |
varchar |
30 |
否 |
price |
float |
10 |
否 |
表4.31 products表
图5-1 网上订餐系统主页
用户登陆和注册按钮设在主界面的左侧,会员登陆到会员的订餐空间,或者新用户注册。会员登陆成功跳到右侧的个人订餐页面,失败则重置。用户登陆后,左侧设有注销,可注销用户登陆信息。
点击左侧的注册按钮,跳转到右侧的注册页面,就可以进行注册了。用户名必须是合法的输入,密码和确认密码必须一致,否则系统提示错误。
用户登陆后,通过左侧的“本期餐饮”的菜品类别可进行菜品浏览,每个菜都有其详细介绍。
用户登陆后便可以菜品浏览并订餐,点击“购买”,可把该菜放入购物车中。
点击右上角的“我的购物车”,可查看自己的订餐情况。在购物车中可以对已点的菜式进行删除,清空,结账等操作以及菜品数量,价格统计。
在购物车中结账后,确认订单地址,至此,顾客的订餐活动结束。
右上角“管理”按钮,进入管理员登陆界面,以管理员身份登陆后,右上角显示出几项管理功能,点击进入,可进行订单管理,菜单管理,用户管理,以及退出管理。
管理员可以对订单进行查看、删除、和派送等操作,管理员可以看到新的订单,是否已经派送,还有订单的具体信息。
显示出所有的类别,可以进行添加和删除操作。
选择一个类别,在其中添加,删除及更新菜品。
管理员对用户的查看和删除功能。
测试是程序的执行过程,目的在于发现错误。测试的目标是想以最少的时间和人力找出软件中潜在的各种错误和缺陷。如果成功地实施了测试,就能够发现软件中的错误并及时合理解决。测试能够证明软件的功能和性能与需求说明相符。此外,实施测试收集到的测试结果数据为可靠性分析提供了依据。
我组采用黑盒测试(Black Box Testing),即功能测试或数据驱动测试 ,把被测软件看作一个不透明的黑盒子,在软件接口处进行,完成功能的验证。黑盒测试完全不需要考虑程序内部的逻辑结构和内部特性。
测试步骤如下图:
1. 用户注册、 登录 |
结束 |
2. 用户在线订餐 |
3. 用户完成订单 |
4. 管理员登录 |
5. 管理员查看、修改订单 |
1、数据库使用MySQL,使得输入的数据内容必须是英文字符和数字字符,若输入中文字符,则出错。
2、对前台和后台分别进行操作,需要实现的功能都可以正常运行。
3、安全性较好。实现了后台管理权限登陆及修改更新数据等功能。
问题解决:
1、在代码中写入这条语句“mysql_query("set names 'latin1_swedish_ci'");”
可以解决输入中文字符转化出错问题。
系统主要采用PHP+MySQL技术进行开发。
[1] 黄梯云,管理信息系统(第三版),高等教育出版社,2004年版。
[2] 萨师煊,王珊. 数据库系统概论(第三版),高等教育出版社,2001年版。
[3] [美]Jono Bacon,PHP+MySQL八大动态Web应用实战,电子工业出版社,2008年版。