HTML 旅游网的设计与实现
时间:2023-10-12 08:36:01 | 来源:网站运营
时间:2023-10-12 08:36:01 来源:网站运营
HTML 旅游网的设计与实现:
目 录
摘要 ………………………………………………………………………………………1
关词 ………………………………………………………………………………………1
绪 论 ……………………………………………………………………………………2
1 网站可行性研究 3
1.1 技术的可行性 3
1.2 经济可行性 3
1。3 操作的可行性 3
2 需求分析 4
2.1 网站系统运行环境 4
2。2 网站系统现状与实现目标 4
2.3 网站系统数据流图 6
2.4 网站数据字典 7
2。5 网站功能需求 8
2。6 性能需求 9
2。7 设计约束 9
3 概要设计和数据库设计 10
3.1 网站功能结构设计 10
3。2 网站模块设计 10
3。3 网站数据库设计 11
3。3。1 数据库需求分析 113。3。2 数据库主要表设计 143.3。3 数据库实现 204 网站详细设计及功能的实现 21
4。1 数据库的连接 21
4。2 网站主页设计 22
4。2 旅游新闻版块 22
4.2.1 旅游新闻模块分析 224。2。2 旅游新闻模块设计 224.2.3 旅游新闻模块实现 224.3 旅游线路版块 24
4。3.1 旅游线路版块分析 244。3。2 旅游线路模块设计 244。3.3 旅游线路模块的实现 244.4 旅游图片版块 25
4.4.1 旅游图片版块分析 254.4。2 旅游图片版块的实现 264。5 酒店版块 28
4.5。1 酒店版块分析 284。5。2酒店版块实现 28
4。6 留言本版块 30
4。6.1 留言本版块的分析 304.6.2 留言本版块的实现 304.7 旅游景点版块 30
4。7。1 旅游景点版块分析 304。7.2 旅游景点版块设计 314.7.3 旅游景点版块实现 315 网站系统测试 31
5.1系统测试的原则 31
5.2 系统测试的方法 32
5.3 网站系统测试结果 33
6 论文小结 34
6.1 网站的功能 34
6。2 网站特点 34
6。3 网站评估与改进方向 34
6.4 开发体会与收获 34
参考文献 35
致 谢 35
旅游网站的设计与实现
贺茂清
摘 要:旅游网站为基于ASP。NET与C#技术的WEB应用程序,并以互联网为传播媒介来实现旅游信息发布、共享的平台。本论文主要论述了其设计开发的基本过程,设计开发中主要运用了ASP。NET技术与C#语言、 SQL等相关技术,根据面向对象开发原理,采用了基于B/S结构的开发模式系统。以IIS为服务器,SQL server 2000为数据库平台。本系统包括旅游线路、酒店及旅游景点的信息管理、留言板管理、用户信息管理、后台数据库信息的管理维护这些基本模块。通过这些模块实现旅游信息共享,为游客提供详细、及时、准确、高效的信息服务。同时对旅游网站的开发原理、网站的功能特点和设计方案进行了介绍。
关键词:旅游网站;SQL数据库;ASP。NET;信息管理
绪 论
计算机网络技术日新月异的进步和互联网的日益普及,使人类生活发生了巨大的变化.越来越多的部门、企事业单位都有通过Internet对外宣传自己,同时为那些有信息需求的人提供方便快捷的服务。随着我国经济的迅速发展,人们的生活水平有了显著提高,假日经济和旅游经济已成为人们消费的热点。各地也把旅游业当作本地经济发展的重要支柱之一,从而带动别的经济产业的快速发展。旅游网站也就成为了各旅游胜地和旅行社对外宣传中不可缺少的工具,它的内容对于旅游胜地的宣传和旅游地的项目的开发的决策起着非常重要的作用。在这种背景下,旅游、电子商务、互联网络的迅速融合将不可避免,并创造出难以估量的价值,网络旅游将推动IT领域内互联网电子商务的迅速发展,也将为旅游业界带来新的生机。
随着信息资源的逐步网络化,信息消费者将被笼罩在巨大的信息网络之中,并由此而具备充分的获取信息的能力。此时,消费者对信息的需求将更具针对性,更为个性化。因此,网络信息服务具有传统信息服务所不具备的双向性,消费者能够更多地参与信息服务的过程,从而加速个性化服务时代的到来。
电子商务运用于旅游业仅有不到十年的时间,但是其发展势头十分强劲。电子商务已经成为信息时代旅游交易的新模式。2006年,全球旅游业电子商务销售额突破730亿美元,连续5年保持350%以上的增长速度。据世界旅游组织预计,5年之内旅游电子商务将占全球所有旅游交易的30%;4至5年内,旅游电子商务在电子商务中的比重将达到30%-35%。
我国旅游务网站从1996年开始出现,目前,具有一定旅游资讯能力的网站已有5000多家。其中专业旅游网站300余家,主要包括地区性网站,专业网站和门户网站的旅游频道三大类。我国现在的旅游网站良莠不齐,比较有实力的品牌网站数量不多.大多数旅游网站还仅仅局限于在网上做一些旅游产品的广告宣传介绍或是客房票务预订,商务电子化程度太低,技术创新力度不够,还不能全面涵盖游客日益增长的对吃、住、游、行等各方面的基本需求,更无法为游客提供个性化要求的旅游产品。旅游网站要扩大自身的影响力,打出自己的品牌必须要兴建起个性化自助服务的商务网站平台及覆盖面广、信息量大、可提供专业便利的全程个性服务,这才是旅游网站得以长期生存发展的根本所在。同时旅游网站的安全性和旅游网站针对搜索引擎的优化也是优秀旅游网站不可缺少的部分。本网站主要是以世界知名旅游胜地神农架,为主题背景来开发模拟设计。
1 网站可行性研究
软件开发中可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决.若问题无法解决,则花费在系统开发上的时间、人力、软硬件资源就会成为浪费.因此,在对旅游网站进行开发之前,首先需要从以下几个方面对其可行性进行研究。
1。1 技术的可行性
本旅游网站系统的开发主要包括后台数据库的建立和维护以及前台页面的浏览开发两个方面。对于前者要求建立数据一致性和完整性强,数据安全性好的数据库;而对于后者则要求应用程序功能完备、易使用等特点。基于这两点,系统可采用B/S结构的开发模式,服务器端使用功能强大的数据库软件Microsoft SQL Server 2000实现数据的存储和维护;客户端使用跨平台网络开发语言
http://ASP.NET实现应用程序的设计。Microsoft Visual studio2005也给编程人员提供了得心应手的集成开发环境。
http://ASP.NET拥有C#开发语言的强大功能,足以实现应用程序所需要实现的功能,还可以结合HTML语言的使用来实现系统操作的便利性。于是,该系统在技术上是可行的。
1。2 经济可行性
本系统使用的基本开发工具为Microsoft Visual studio2005(开发平台), Microsoft SQL Server 2000(数据库软件),IIS (Internet 信息服务器),Dreamwerver8和Photoshop7。0都是网络提供的免费软件。系统投入使用后,只需网站管理员通过浏览器浏览系统页面进行相应操作:对网站信息和数据做更新、修改、删除就可完成对网站的系统维护和管理。对网站进行相应的推广和宣传,提高网站的知名度,使更多的人在互联网上更容易的通过搜索引擎搜索到旅游网站,游客就可以通过网上直接找到网站所属的旅行社,这样将会为旅行社带来立竿见影的效果,能大大的提升旅行社的业务量,使旅行社获得丰厚的利润。收益将远远大于投资.
1.3 操作的可行性
网站管理员对系统进行的操作都是通过浏览器进入网站后台系统,在可视化的界面下对网站内容进行使用和操作。由于网站系统对信息的流向和出错都进行了人性化的处理。只要具有普通上网能力的人都可以对网站后台系统进行使用和操作。就操作性方面系统是可行的.
2 需求分析
需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么”这个问题,即仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。下面分七个小节来对该前台点菜系统在各方面的需求进行分析。
2。1 网站系统运行环境
本旅游网站系统按照标准的800×600分辨率建设运行;本旅游网站的运行必须在安装了IIS (Internet 信息服务器)、
http://Micosoft.NET Framework2.0、Microsoft SQL Server 2000数据库等软件的计算机上。系统的开发使用了Microsoft Visual studio2005(开发平台), Microsoft SQL Server 2000(数据库软件),IIS (Internet 信息服务器),Dreamwerver8和Photoshop7.0等软件.
2.2 网站系统现状与实现目标
本旅游网站系统是在神农架旅游人数日益增多的情况下应运而生,它是一个关于现代人对旅游要求的提高和信息方便快捷日益加速而提出的一套应于网络的旅游网站系统。
旅游是神农架立区之本。自开发旅游以来,已打下了相当好的基础,旅游业的支柱地位已初见端倪。可是神农架区全民办旅游的气氛还不浓,合力还不够,思想观念还没有完全统一,许多政策和管理措施还不到位,旅游规划不严格,旅游资金投入不足,旅游企业体制不完善等弊端的存在使的坚持大旅游、高起点、优布局、功能全、可持续的原则很难实现.于是制订出神农架林区旅游产业的总体规划,把神农架规划建设成为独具湘西风格和旅游城市特色的湘鄂渝的交通枢纽和旅游中心,争取2010年城市人口规模达50万左右,年接待国内外旅游者突破1000万人次。电子商务旅游在这种情况下被提了出来,它能满足不同游客的不同要求,使的他们在查询和预定旅游线路、酒店预定、选择接待旅行社等方面能方便、及时、快捷和有效。
旅游网站不仅适合小型的旅行社,对于大中型的旅行社一样适宜。本网站系统通过旅客与我们网站的联系人员联系,能很快的得到需要的服务。该系统为游客提供了经典的旅游线路和报价,酒店价格、条件,航班消息,车次信息和旅游天气查询等.通过使用网页的自动刷新功能,自动检测浏览客户的最新消息,以实现后台数据的自动刷新和实时互动这两个功能;通过神农架各旅游网站实际考核,获取它们好的布局结构,结合自己的个性特点,创建一个别具风格的个性界面.
本旅游网站以旅游新闻发布、旅游线路发布、景区图片和游客留言等功能为核心,其宗旨是及时、准确、完整发布游客所需要的相关信息,同时给游客带来方便和给公司创造利益。它的主要功能如下:
一、旅游线路信息发布以及预定功能:顾客可通网站查看相应的旅游线路信息和预定旅游线路功能,管理员可以在后台对旅游线路进行发布、更新,对于线路预定可以进行相应的处理。
二、酒店查询、预订功能:顾客可以通过网站查询神农架酒店情况,同时还可以对合适的酒店进行预订.
三、旅游景点介绍功能:顾客在网站可以查看神农架主要旅游景区和景点介绍信息,管理员可以在后台对旅游景点信息进行更新、修改和删除。
四、旅游新闻发布功能:顾客可以通过旅游网站查看神农架最新的旅游资讯和旅游动态,网站管理员可以在后台发布、更新和删除旅游新闻。
五、旅游风景图片发布功能:游客可以通过网站查看神农架最新的风光图片,可以点击小图看大图,图片按照相应的旅游景点分类,管理员可以上传和修改、删除图片信息.
六、旅游服务指南和旅游问答发布功能:游客可以通过网站查看一些神农架旅游的注意事项和在神农架旅游经常遇到的一些问题,管理员在后台可以对信息进行更新和修改、删除功能。
七、机票和自驾车旅游路径查询功能:游客可以通过网站,查询相应出发地到目的地的机票航班和自驾车路径。
八、游客留言板功能:游客可以通过留言板给管理员留言,管理员可以通过登录对留言进行管理和回复。
九、旅游会议信息发布功能:游客可以查看神农架旅游会议信息和旅游会议安排。
十、提供友情链接,使用户方便到达相关站点;
根据网站的建站原则与目的,结合神农架旅游的一般特点,本网站具体包括如下栏目:
旅游新闻发布:管理员发布相关旅游新闻,实现动态管理
旅游图片发布:管理员发布相关景区图片,实现动态管理
旅游线路发布和预定:管理员发布相关旅游线路,对线路的预定进行相应的处理
旅游酒店查询、预订功能:对当地的酒店进行查询、预订
旅游景点介绍:管理员发布相关的旅游景点,对景点信息进行动态管理
游客留言板:游客可以在此进行留言
网站管理:包括信息发布管理、留言本管理、论坛管理、网站系统设置等模块。
2.3 网站系统数据流图
数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此是分析员与用户之间极好的通信工具。根据以上对系统的基本功能实现目标的分析,现在将本系统的顶层数据流图描述如图2-1所示:
定单 定单信息
旅 游 网 站 管 理 系 统
管理员
浏览客户
线路信息 旅游线路
旅游新闻 旅游新闻
图片信息 旅游图片
回复信息 回复信息
景点信息 旅游景点
酒店信息 旅游酒店
留言信息 客户留言
数据库
图 2-1 顶层数据流图
顶层数据流图从整体上较清楚地描述了本系统的数据流向和加工处理过程,但是要清楚地描述系统数据的流向和加工处理的每个细节,仅用顶层数据流图是不够的。因此,在全局数据流图的基本上对局部进行单独放大,进一步细化,采用多层的数据流图来描述。以下是本系统的第一层数据流图(图 2—2):
留言信息
景点信息
景点信息
线路信息
线路信息
图片信息
图片信息
酒店信息
酒店信息
新闻信息
新闻信息
回复信息
回复信息
留言信息
定单信息
定单信息
1
定单信息处 理
2
留言信息处 理
3
旅游新闻处 理
4
旅游酒店处 理
5
旅游图片处 理
6
旅游线路处 理
D1 定单
浏览客
户
管 理 员
7
旅游景点处 理
图2—2 第一层数据流图
2.4 网站数据字典
数据字典的作用是对数据流图中的各种成分进行详细说明,作为数据流图的细节补充,和数据流图一起构成完整的系统需求模型。数据字典一般应包括对数据项,数据结构、数据存储和数据处理的说明.以下列出本系统的主要数据字典条目。
admin(管理员用户表)= Id(PK)+User_name+User_psd;
article(新闻表)=article_id(PK)+ Article_title + Article_content + Article_author +Articletype_i+ Add_date;
line(线路表)= line_id (PK)+ line_type (FK)+ line_picname + line_name + line_xingcheng+ line_baojia+ line_anpai+ line_shuoming+ line_price;
hotel(酒店表)= hotel_id (PK)+ hotel_name+ hotel_position+ hotel_grade+ hotel_content+ hotel_zwjg+ hotel_citycenter+ hotel_tdprice;
line_ding(线路定单表)=Waiterid(PK)+Waitername+Waiterpsd;
hotel_ding(酒店定单表)= hoteldd_id (PK)+ hotel_name + hotel_fjtype+ hotel_fjsum+ hotel_joinpeople+ hotel_begintime+ hotel_endtime+ h_name+ h_content;
guest(留言本表)= userID (PK)+ userName + userFrom + sex + Content;
jingdianpic(图片表)= pic_id (PK)+ pic_url + pic_name+ jingdian_id;
jingdian(景点表)=jingdianid(PK)+ Jingdian_name+ Jingdian_content;
2.5 网站功能需求
本旅游网站网站是为以旅游信息发布、旅游资料共享、浏览客户与管理员交流活动为核心的网站,宗旨是能及时、准确、完整发布游客需要的旅游信息。
1. 浏览客户
浏览客户是只在浏览器端浏览网站信息的用户,也是整个网站信息需要面向的用户,其主要实现功能为:
(1) 客户可以在任意一台与因特网连接的计算机上,通过浏览器浏览本网站
(2) 客户可浏览旅游新闻信息
(3) 客户可浏览旅游线路信息
(4) 客户可浏览旅游酒店信息
(5) 客户可浏览旅游图片信息
(6) 客户可浏览旅游景点信息
(7) 客户可对适合自己的旅游线路或旅游酒店下定单(按照页面的提示对定单进行填写。)
(8) 客户可在留言本版块进行留言和提问
2。网站管理员
网站管理员是被赋予网站全部权限的用户,能对网站的所有信息进行修改、更新和删除,其主要功能如下:
(1)管理员可登录系统。
(2)管理员可添加、删除管理员的信息
(3)网站管理员可对旅游新闻信息进行删除、修改、添加
(4)网站管理员可对旅游线路信息进行删除、修改、添加
(5)网站管理员可对旅游图片信息进行删除、修改、添加
(6)网站管理员可对旅游景点信息进行删除、修改、添加
(7)网站管理员可对旅游酒店信息进行删除、修改、添加
(8)网站管理员可对客户定单信息进行删除、修改、添加
(9)网站管理员可对留言板游客留言信息进行删除、修改、回复
2.6 性能需求
1. 网站系统在因特网正常状况下全天候提供服务,客户可以随时随地的对网站进行浏览访问.
2。 点击页面时,显示速度要尽可能的快。
2。7 设计约束
1。 安全性约束
要对不同的用户设置不同的权限,如浏览客户(拥有对网站信息的浏览、对定单提交功能)、管理员(拥有对网站系统的完全操作权限)
2. 完整性约束:
(1) 各种信息记录的完整性,数据库中要求不能为空的信息内容不能为空。
(2) 各种数据间相互联系的正确性。
(3) 相同的数据在不同记录中的一致性。
3. 软、硬件约束:
(1)对于系统开发端的要求:
要运用Microsoft Visual studio2005软件作为代码编写开发平台,选择它是因为它有很好的查错功能,并能很方便的安装插件,从而大大扩展此软件的功能。其运行的硬件要求是:CPU要求C1。7G以上,内存在256M以上,磁盘可用空间20G以上;在开发ASP。NET应用程序之前,系统还必须安装Microsoft。NET Framework 2.0和IIS.
(2)对于客户端的要求:
要求不高,要求能连接互联网,可以正常浏览网页的单机都行。
3 概要设计和数据库设计
3.1 网站功能结构设计
通过对神农架旅行社网站的考察和需求分析时对网站功能的分析,我们可以得出以下前台功能结构图:
旅游网站管理系统旅游酒店定单提交留言板旅游图片旅游线路图片管理景点管理线路管理酒店管理定单处理用户管理新闻管理旅游景点旅游新闻前台主界面后台管理系统3.2 网站模块设计
模块化:按照后台功能将一个软件切分为许多部分单独开发,然后再组装起来,每一个部分即为模块。根据图功能结构图,将网站模块化如下:
一、旅游新闻模块
二、旅游线路模块
三、旅游图片模块
四、酒店信息模块
五、留言本模块
六、旅游景点模块
七、定单处理模块
3。3 网站数据库设计
3。3。1 数据库需求分析
系统各种功能的实现离不开数据库的支持,因此数据库的设计是本系统不可缺少的一部分。首先对本系统的数据流进行分析,得出数据流图,然后进行数据库的E-R图分析后,最后才能进行数据库逻辑结构设计和数据库实现.根据需求分析,确定系统中的实体,并且分析其属性,实体与实体间的关系是要研究的重点对象,实体之间存在一对一、一对多、多对多的关系。
此网站可分为前台系统和后台系统两个部分。其总体的流程图分析:
成功
游客
旅游留言
登录
重试
失败
成功
游览网站
保存
预订
重
试
失败
管理员
登录
重试
失败
成功
管理员
调用
数据库
提送
保存
前台显示
图 3-1 流程图
依据从简单到复杂的设计方式,先确定系统需要哪些实体,并对该实体的属性进行分析。从而得出各实体属性图,最后得出整体E—R图。通过分析,本系统需要有以下一些实体:
旅游新闻
图3-2 旅游新闻实体属性图
旅游线路
图3—3 旅游线路实体属性图
旅游图片
图3-4 旅游图片实体属性图
旅游景点
图3—5 旅游新闻实体属性图
旅游酒店
图3—6 旅游新闻实体属性图
提交定单
图3-7 定单联系属性图
图 3—8 管理员实体属性图
提交留言
图3—9 留言联系属性图
根据各个实体之间的联系做出E—R图,如图所示。
浏览
定单提交
定单
客户
浏览
浏览
留言板
旅游酒店
旅游线路
管理
管理
管理
管理员
管理
旅游图片
浏览
管理
旅游图片
浏览
n
n m
n n n m
n r
m m m m
n n n n n
1 1 1 1 1
图3-10 系统E-R图
3。3。2 数据库主要表设计
通过以上对E—R图的分析,可初步得出本系统应该有以下表.
- 用来存储后台管理员用户的表:后台管理员表admin(如表3—1显示)用来保存后台管理员的信息,例如管理员编号、用户名、密码。该表主键为Id,其中管理员编号设为自动增长。
- 用来存储新闻类型的表:新闻类型表articletype(如表3—2显示)用来保存新闻类型的信息,例如类型编号、类型名。该表主键为articletype_id,其中类型编号设为自动增长。
- 提供新闻信息的新闻表:旅游新闻表article(如表3-3显示)用来保存新闻的信息,例如新闻编号、类型名等。该表主键为article_id,其中新闻编号设为自动增长。
- 提供景点信息的景点表: 景点表jingdian(如表3-4显示)用来各景点信息,例如景点编号、景点名。该表主键为jingdian_id,其中景点编号设为自动增长。
- 保存留言信息表:留言本表guest(如表3-5显示)用来保存留言板的信息,例如留言编号、留言。该表主键为guest_id,其中留言编号设为自动增长。
- 提供酒店信息的酒店表: 酒店信息表:hotel(如表3—6显示)用来保旅游酒店的信息,例如酒店编号、酒店名。该表主键为hotel_id,其中酒店编号设为自动增长。
- 保存酒店定单信息的定单表: 酒店定单表hotel_ding(如表3—7显示)用来保存酒店定单的信息,例如定单编号、酒店名。该表主键为hoteldd_id,其中酒店定单编号设为自动增长。
- 保存图片信息的图片表: 景点图片表jingdianpic(如表3—8显示)用来保存景点图片的信息,例如图片编号、图片地址。该表主键为pic_id,其中图片编号设为自动增长。
- 提供线路信息的表: 线路表line(如表3—9显示)用来保存旅游线路的信息,例如线路编号、线路名。该表主键为line_id,其中线路编号设为自动增长。
- 保存线路定单信息的定单表: 线路定单表line_ding(如表3—10显示)用来保存线路定单的信息,例如线路定单编号、线路名名.该表主键为linedd_id,其中线路定单编号设为自动增长.
- 提供友情链接的链接表: 友情链接表friendlink(如表3-11显示)用来保存友情链接的信息,例如友情链接编号、网站名名.该表主键为Id,其中友情链接编号设为自动增长。具体表格设计如下:
表 3-1后台管理员表(admin)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
Id | Int | 4 | 否 | 自动分配ID |
User_name | varchar | 50 | 否 | 用户名 |
User_pwd | Varchar | 50 | 否 | 用户密码 |
表3-2 新闻类型表(articletype)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
articletype_id | Int | 4 | 否 | 自动分配ID |
articletype_name | Varchar | 50 | 否 | 类型名称 |
表3-3 旅游新闻表(article)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
Article_id | Int | 4 | 否 | 自动分配ID |
Article_title | Varchae | 100 | 可以 | 新闻标题 |
Article_content | ntext | 16 | 可以 | 新闻内容 |
Article_author | varchar | 50 | 可以 | 新闻作者 |
Articletype_id | Int | 4 | 否 | 新闻类型 |
Add_date | datetime | 8 | 可以 | 添加时间 |
表3-4景点表(jingdian)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
Jingdian_id | Iint | 4 | 否 | 自动分配ID |
Jingdian_name | Varchar | 50 | 可以 | 景点名称 |
Jingdian_content | ntxt | 16 | 可以 | 景点介绍 |
Add_date | Datetime | 8 | 可以 | 添加时间 |
表3—5留言板(guest)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
userID | int | 4 | 否 | 自动分配ID |
userName | varchar | 50 | 否 | 用户名 |
userFrom | varchar | 50 | 否 | 来自哪里 |
sex | varchar | 50 | 可以 | 性别 |
QQ | varchar | 50 | 可以 | QQ |
Email | varchar | 50 | 可以 | |
Content | varchar | 3000 | 可以 | 留言内容 |
Reply | varchar | 3000 | 可以 | 管理员回复 |
imageAddress | varchar | 50 | 可以 | 头像 |
posttime | datetime | 8 | 可以 | 留言时间 |
replytime | datetime | 8 | 可以 | 回复时间 |
表3—6酒店(hotel)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
hotel_id | int | 4 | 否 | 自动分配ID |
hotel_name | varchar | 50 | 可以 | 酒店名称 |
hotel_position | varchar | 50 | 可以 | 酒店位置 |
hotel_grade | int | 4 | 可以 | 酒店星级 |
hotel_pic1 | varchar | 50 | 可以 | 酒店图片 |
hotel_pic2 | varchar | 50 | 可以 | 酒店图片 |
hotel_pic3 | varchar | 50 | 可以 | 酒店图片 |
hotel_content | ntext | 16 | 可以 | 酒店简介 |
hotel_zwjg | varchar | 200 | 可以 | 周围景观 |
hotel_citycenter | varchar | 50 | 可以 | |
hotel_tel | varchar | 50 | 可以 | |
hotel_trainstation | varchar | 50 | 可以 | |
hotel_fax | varchar | 50 | 可以 | |
hotel_airport | varchar | 50 | 可以 | |
hotel_price | ntext | 16 | 可以 | 酒店价格 |
hotel_gpprice | int | 4 | 可以 | |
hotel_tdprice | varchar | 50 | 可以 | |
hotel_skprice | varchar | 50 | 可以 | |
hotel_tuijian | varchar | 50 | 可以 | 是否推荐 |
add_date | datetime | 8 | 可以 | |
表3-7酒店定单(hotel_ding)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
hoteldd_id | int | 4 | 否 | 自动分配ID |
hotel_name | varchar | 50 | 可以 | |
hotel_fjtype | varchar | 50 | 否 | 房间类型 |
hotel_fjsum | varchar | 50 | 可以 | |
hotel_joinpeople | varchar | 50 | 可以 | |
hotel_begintime | datetime | 8 | 可以 | 入住时间 |
hotel_endtime | datetime | 8 | 可以 | |
h_name | varchar | 50 | 可以 | |
h_tel | varchar | 50 | 可以 | |
h_qq | varchar | 50 | 可以 | |
h_email | varchar | 50 | 可以 | |
h_fax | varchar | 50 | 可以 | |
h_content | ntext | 16 | 可以 | |
admin_action | varchar | 50 | 可以 | 定单状态 |
add_date | datetime | 8 | 可以 | |
表3-8 景点图片(jingdianpic)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
pic_id | int | 4 | 否 | 自动分配ID |
pic_url | varchar | 50 | 可以 | |
pic_name | varchar | 50 | 可以 | |
jingdian_id | int | 4 | 可以 | |
add_date | datetime | 8 | 可以 | |
表3—9旅游线路(line)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
line_id | int | 4 | 否 | 自动分配ID |
line_name | varchar | 300 | 可以 | |
line_xingcheng | ntext | 16 | 可以 | |
line_baojia | ntext | 16 | 可以 | |
line_anpai | ntext | 16 | 可以 | 线路安排 |
line_shuoming | ntext | 16 | 可以 | 线路说明 |
line_price | varchar | 50 | 可以 | |
line_pic | varchar | 50 | 可以 | |
line_picname | varchar | 50 | 可以 | |
line_type | varchar | 50 | 可以 | 线路类型 |
表3-10旅游线路定单(line_ding)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
linedd_id | int | 4 | 否 | 自动分配ID |
line_name | varchar | 300 | 可以 | |
line_chufaplace | varchar | 50 | 可以 | |
line_jointime | varchar | 50 | 可以 | |
line_joinpeople | varchar | 50 | 可以 | |
line_dhotel | varchar | 50 | 可以 | |
line_dplane | varchar | 50 | 可以 | |
l_name | varchar | 50 | 可以 | |
l_tel | varchar | 50 | 可以 | |
l_qq | varchar | 50 | 可以 | |
l_email | varchar | 50 | 可以 | |
l_fax | varchar | 50 | 可以 | |
l_content | ntext | 16 | 可以 | |
admin_action | varchar | 50 | 可以 | |
add_date | datetime | 8 | 可以 | |
表3-11友情链接表(friendlink)
列名 | 数据类型 | 长度 | 可否为空 | 说明 |
Id | Int | 4 | 否 | 自动分配ID |
Web_name | Varchar | 50 | 否 | 网站名称 |
Web_address | Varchar | 100 | 可以 | 网站网址 |
Web_content | Varchar | 500 | 否 | 网站介绍 |
Web_type | Char | 1 | 可以 | 网站类型 |
Add_date | Datetime | 8 | 可以 | 网站时间 |
Admin_action | Char | 10 | 可以 | 网站状态 |
People | Varchar | 50 | 可以 | 联系人 |
Qq | Varchar | 50 | 可以 | 联系QQ |
Tel | Varchar | 50 | 否 | 联系电话 |
Dd_id | Int | 4 | 否 | 自动编号 |
3。3。3 数据库实现
打开以Microsoft SQLSERVER2000企业管理器,创建tourzjjdb数据库,按照数据库表格设计,创建相应的数据库表.数据库语言主要是采用SQL.
SQL(Structured Query Language),全称是“结构化查询语言(Structured Query Language)",是操作数据库的标准语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,得到了广泛的应用.在ASP中,无论何时要访问一个数据库,都要使用SQL语言。
4 网站详细设计及功能的实现
4。1 数据库的连接
本系统涉及到SQL数据库的使用。所以系统要正常运行,必须进行好数据库连接。因为实现系统功能的类都要与数据库进行连接,为了避免在每个类中重复编写代码,于是在系统程序中编写了一个数据库连接的抽象类-—DB类来完成数据库连接的操作。在其它类中只需要调用该方法便可完成数据库连接。创建连接数据库类DB连接数据库
public static SqlConnection conCreate()
{ // 连接网站数据库
SqlConnectioncon=newSqlConnection(”server=.;database=tourzjjdb;uid=sa;pwd=love76898998;”);
return con;
}
public DataTable dt()
{ //读取数据库
SqlConnection con = DB。conCreate();
SqlDataAdapter sda = new SqlDataAdapter();
sda。SelectCommand = new SqlCommand(sqlText,con);
DataTable table = new DataTable();
sda.Fill(table);
return table;
}
对应相应信息时,利用分页类对网站显示内容进行分页处理
public PagedDataSource pageSorce()
{ //对排序信息分页类
PagedDataSource ps = new PagedDataSource();
ps.DataSource = dt().DefaultView;
ps。AllowPaging = true;
return ps;
}
按照新闻类别和新闻标题读取对应的新闻内容
public static SqlConnection createcon()
{ //新闻管理系统读取数据库内容
SqlConnectioncon=newSqlConnection("server=。;database=tourzjjdb;uid=sa;pwd=love76898998");
return con;
}
public static DataTable Bindarticletype()
{
SqlConnection con1 = DB.createcon();
con1。Open();
SqlDataAdapter sda = new SqlDataAdapter();
sda。SelectCommand = new SqlCommand(”select * from articletype”, con1);//查询对应的新闻信息
DataTable dt = new DataTable();
sda.Fill(dt);
return dt;
}
在后台对数据库进行添加时,通过文本编辑器对其进行写入数据库
SqlCommandcmd=newSqlCommand(”insertjingquvalues(@jingqu_name,@jingqu_content,@addtime)", con); //将景区信息写入数据库
SqlParameterpara= new SqlParameter("@jingqu_name", SqlDbType。VarChar);
cmd.Parameters。Add(para);
para.Value = jingqu_name;
para = new SqlParameter(”@jingqu_content", SqlDbType。Text);
cmd。Parameters。Add(para);
para.Value = jingqu_content;
para = new SqlParameter("@addtime”, SqlDbType.DateTime);
cmd.Parameters.Add(para);
para。Value = dt;
cmd.ExecuteNonQuery();
con。Close();
return true; }
4。2 网站主页设计
网站主要采用静、动相结合的方式,即静态的主画面和动态的图片相结合。静态主页内容包括学首页、交通路径、旅游会议和旅游天气查询版块,留言板和旅游线路显示、旅游新闻、旅游酒店就是利用
http://ASP.NET与数据库结合的技术建立数据库查询管理系统,采用交互式的动态的web画面来实现。
本网站默认的页面index。htm, index。htm提供了各个分版块的链接,其本身具备动态显示公告和新闻功能,开辟了在联系方式,友情链接校内和支付方式等功能,实现了浏览统计功能。
4。2 旅游新闻版块
旅游新闻系统提供了一个发布新闻信息的平台, 新闻信息的发布与维护由管理员完成,本网站的新闻按类型分为旅游资讯和服务指南新闻。为方便管理,在后台管理员可以对其进行添加、删除、修改等功能。
4.2。1 旅游新闻模块分析
本网站的的旅游新闻系统包括以下几个部分:新闻列表、新闻浏览、新闻发布、新闻管理.
4。2.2 旅游新闻模块设计
新闻显示需要包含某类新闻列表、新闻综合列表、新闻内容显示3部分,新闻管理包含新闻发布、新闻修改、新闻删除、新闻类型管理4部分。
4。2。3 旅游新闻模块实现
建好数据库后,就可以实现旅游新闻系统的代码,根据前面给出的旅游新闻系统结构图,系统实现主要包括旅游新闻浏览、旅游新闻管理和旅游新闻的排列.
4。2.3.1 旅游新闻浏览
旅游新闻浏览将数据库中的新闻信息查询出来,并在页面中将新闻标题等几个字段进行列表显示,这样就可以在页面中显示较多的信息内容,并且在列表页面提供链接,可以打开页面阅读新闻详细内容。
限于篇幅,公告和新闻及其详细列表页面的源代码在此就不再列出了,article。aspx和showarticle.aspx均具有分页显示功能,当前页显示采用了cint(request(”page"))函数,Set rs=server。CreateObject ("adodb。recordset”),sql="select * from article order by news_id desc”,使用Server对象之方法CreateObject来创建一脚本对象,扩展了
http://ASP.net的功能。
在notice.asp和news.asp中均调用了format。asp的strLength(str)和cutstr(str,strlen,more,url)函数,以获取和截取字符串。
4。2.3.2 旅游新闻管理
新闻管理包括发布新闻、修改新闻、删除新闻页面,以及进行数据库操作的页面。
通过网站管理员登录后台管理系统,对新闻信息进行添加,写入数据库
protected void btn_add_Click(object sender, EventArgs e)
{ //添加新闻信息
string newskindtext = this。TextBox1。Text;
SqlConnection con = DB。createcon();
con。Open();
SqlCommand cmd = new SqlCommand("select count(*) from articletype where articletype_name='” + newskindtext + "’", con);
int count = Convert。ToInt32(cmd.ExecuteScalar());
if (count 〉 0)
{//判断新闻类别是否已经存在
this.lbl_hint.Text = "已存在的新闻类别,请重新添加其它的!”; }
限于篇幅,新闻系统中其他功能不再列出.
4.3 旅游线路版块
旅游线路发布主要是向浏览用户及时、快速的发布适合游客的旅游线路安排,针对不同的时间段和不同的游客制定不同的旅游线路,旅游线路包括行程安排、旅游景点、住宿标准以及旅游接待价格,同时针对每条线路,浏览用户可以在网上直接对其进行预订。网站管理员在后可以对相应的旅游线路进行修改、添加、删除操作,对于游客在网上预订的旅游线路定单进行相应操作。
4.3。1 旅游线路版块分析
本网站的旅游线路发布系统包括以下几个部分:旅游线路的添加、旅游线路的修改、旅游线路的删除、旅游线路的预订、旅游线路类型。
4.3.2 旅游线路模块设计
旅游线路显示需要包含某类旅游线路列表、旅游线路内容显示2部分,旅游线路管理包含旅游线路发布、旅游线路修改、旅游线路删除、旅游线路类型管理4部分.功能模块如图所示。
4。3。3 旅游线路模块的实现
建好数据库后,就可以实现旅游线路系统的代码,根据前面给出的旅游线路系统结构图,系统实现主要包括旅游线路的浏览和旅游线路的管理。
4.3。3.1 旅游线路的浏览
旅游线路浏览将数据库中的旅游线路信息查询出来,并在页面中将旅游线路的标题等几个字段进行列表显示,这样就可以让浏览用户有选择性的浏览信息内容,line.aspx和car.aspx均具有旅游线路显示功能的页面。
4。3.3。2 旅游线路的管理
旅游线路的管理包括发布旅游线路、修改旅游线路、删除旅游线路页面,以及进行数据库操作的页面。
及其主要功能代码如下:
发布旅游路线信息,按线路添加的时间排序,主要是运用了DataSource控件来实现,后台管理员添加旅游线路信息,是通过文本编辑器写入数据库来实现的
SqlConnection con=DB.conCreate();//调用数据库连接类
con.Open();
SqlCommand cmd=new SqlCommand();//插入新的线路信息
cmd。CommandText = ”insert Line (line_name,line_xingcheng,line_anpai,line_shuoming,line_baojia,add_date,line_price,line_pic,line_picname,line_type)values(@line_name,@line_xingcheng,@line_anpai,@line_shuoming,@line_baojia,@add_date,@line_price,@line_pic,@line_picname,@line_type)”;
cmd。Connection=con;
SqlParameter para=new SqlParameter("@line_name",SqlDbType.VarChar);
cmd.Parameters.Add(para);//写入数据库
para.Value=line_name;
para=new SqlParameter(”@line_xingcheng”,SqlDbType。NText);
cmd。Parameters。Add(para);
para。Value=line_direction;
para=new SqlParameter("@line_anpai”,SqlDbType.NText);
cmd。Parameters。Add(para);
para.Value=line_anpai;
para=new SqlParameter("@line_shuoming”,SqlDbType.NText);
cmd。Parameters。Add(para);
para。Value=line_memory;
para=new SqlParameter("@add_date",SqlDbType.DateTime,8);
cmd。Parameters。Add(para);
para。Value=line_date;
para=new SqlParameter("@line_price”,SqlDbType.VarChar,50);
cmd.Parameters。Add(para);
para。Value=line_price;
限于篇幅,新闻系统中其他功能不再列出.
4。4 旅游图片版块
旅游图片发布系统主要是向浏览用户提供神农架精美风景图片,根据各个不同的旅游景点上传相应的风光图片,页面按上传顺序缩成小图排列,浏览用户可以在点击小图浏览大图。也可以对不同景点的风光图片按其静电名称搜索.网站管理员在后可以对相应景点的风光图片进行修改、添加、删除操作。
4。4。1 旅游图片版块分析
本网站的旅游图片发布系统包括以下几个部分:旅游图片的添加、旅游图片的修改、旅游图片的删除、各旅游景点旅游图片搜索。
4.4。2 旅游图片版块的实现
根据前面给出的旅游图片发布系统结构图,系统实现主要包括旅游图片的浏览和旅游图片的搜索以及旅游图片的管理。
4。4。2。1 旅游图片的浏览
旅游图片的浏览将数据库中的旅游图片信息查询出来,并在页面中将旅游图片缩成小图进行列表显示,这样就可以让浏览用户有选择性的浏览信息内容,并且在列表页面提供链接,可以点击小图浏览清晰的大图。
限于篇幅,旅游图片的浏览及其详细列表页面的源代码在此就不再列出了,picture。aspx为旅游图片显示页面.
4.4。2。2 旅游图片的管理
旅游线路的管理包括发布旅游图片、修改旅游图片、删除旅游图片页面.
旅游图片的添加是通过管理员在后台添加实现的,主要运用了VS2005自带的图片上传控件。主要是在对上传图片的名称读取和路径存储设置
protected void Button1_Click(object sender, EventArgs e)
{ // 读取图片的名称和路径
string fullfileName = this。File1.PostedFile。FileName;
string fileName = fullfileName。Substring(fullfileName。LastIndexOf(”//”) + 1);
string fileType = fullfileName.Substring(fullfileName.LastIndexOf(”.”) + 1);
if (fileType == ”jpg" || fileType == ”JPG" || fileType == ”gif” || fileType == "Gif" || fileType == "bmp” || fileType == "BMP")
{ // 设定图片的保存路径
this.File1.PostedFile.SaveAs(this.Server。MapPath(”pic") + ”//" + fileName);
this.Session[”line_pic1”] = "pic" + "/" + fileName;
SqlConnection con = DB。conCreate();
con.Open();
SqlCommand cmd = new SqlCommand(”insert jingdianpic values(@pic_url,@pic_name,@jingdian_id,@addtime)", con); //图片信息写入数据库
SqlParameter para = new SqlParameter(”@pic_url”, SqlDbType.VarChar);
cmd.Parameters.Add(para);
para。Value = this.Session["line_pic1"]。ToString();
para = new SqlParameter("@pic_name", SqlDbType。VarChar);
cmd。Parameters。Add(para);
para.Value = this。TextBox1.Text;
para = new SqlParameter(”@jingdian_id”, SqlDbType。Int);
cmd。Parameters.Add(para);
para.Value = this。Session["pic”].ToString();
para = new SqlParameter("@addtime", SqlDbType.DateTime);
cmd。Parameters.Add(para);
para。Value = DateTime.Now;
cmd。ExecuteNonQuery();
con.Close();
this。db_pic(); }
限于篇幅,旅游图片的管理页面的源代码在此就不再列出了,picture.aspx为旅游图片显示页面。
4。4。2。3 旅游图片的搜索
旅游图片的搜索,主要是根据相应的景点名,在数据库中查找相应的旅游风光图片。其代码如下:
protected void Page_Load(object sender, EventArgs e)
{if (!this。IsPostBack) // 判断初始值
{
temp = Convert。ToInt32(this。Request。QueryString["jingdian_id”]);
this.Session[”jingdian_id"] = temp;
this.db_pic();
this.db_jd();
旅游图片的搜索,是根据浏览客户在文本框的内容,查找相应的景点图片:
private void db_jd() // 查找对应的景点
{this。DataList2.DataSource = new DB("select * from jingdian")。dt();
this。DataBind();
}
protected void Button1_Click(object sender, EventArgs e) //查找对应景点的图片
{this。DataList1.DataSource = new DB("select * from jingdianpic where pic_name like ’%"+this.TextBox1。Text+"%'")。dt();
this.DataList1。DataBind();
}
4。5 酒店版块
旅游酒店发布主要是向浏览用户及时、快速的发布神农架的酒店信息,按照不同的景区和酒店的星级来发布酒店信息,酒店信息包括酒店名称、酒店星级、酒店价格以及酒店所在的景区,同时针对每个具体的酒店,浏览用户可以在网上直接对其进行预订。网站管理员在后可以对相应的酒店信息进行修改、添加、删除操作,对于游客在网上预订的酒店预订定单进行相应操作。
4。5.1 酒店版块分析
本网站的酒店信息发布系统包括以下几个部分:酒店信息的添加、酒店信息的修改、酒店信息的删除、各旅游景点各星级旅游酒店的搜索.
4.5。2酒店版块实现
根据前面给出的酒店信息发布系统结构图,系统实现主要包括酒店信息的浏览、酒店信息的列表排列以及酒店信息的搜索以及酒店信息的管理。
4.5.3.1 酒店信息的浏览
酒店信息的浏览将数据库中的酒店信息查询出来,并在页面中按照添加的酒店id按顺序排列出来,根据添加酒店信息时选择的是否在主页显示列出按酒店名排列的酒店信息.
限于篇幅,酒店信息的浏览及其详细列表页面的源代码在此就不再列出了,hotel.aspx为酒店信息显示页面,showhotel.aspx为具体酒店详细信息介绍页面。
4.5.3。2 酒店信息的管理
酒店信息的管理包括发布酒店信息、修改酒店信息、删除酒店信息页面。
限于篇幅,旅游图片的管理页面的源代码在此就不再列出了,picture。aspx为旅游图片显示页面。
4。5.3。3酒店信息的搜索
酒店信息的搜索,主要是根据所在的景区、价格以及星级进行搜索和查找。其代码如下:
public void tj_hotel() //显示推荐酒店
{this。DataList1。DataSource = new DB("Select hotel_id,hotel_name from hotel where hotel_tuijian=1")。dt();
this.DataList1.DataKeyField = "hotel_id”;
this。DataList1.DataBind();}
public void shiqu_hotel() //显示市区酒店
{this.DataList2.DataSource = new DB("Select top 10 * from hotel where hotel_position=1")。dt();
this.DataList2。DataKeyField = "hotel_id”;
this。DataList2.DataBind();}
public void jingqu_hotel() //显示景区酒店
{this。DataList3.DataSource = new DB(”Select top 10 * from hotel where hotel_position=0”).dt();
this。DataList3。DataKeyField = ”hotel_id";
this。DataList3。DataBind();
}
protected void DataList3_ItemCommand(object source, DataListCommandEventArgs e) //景区酒店预定
{if (e.CommandName == ”yd”)
{int hotel_id = Convert。ToInt32(this。DataList3。DataKeys[e。Item。ItemIndex]);
this。Response.Redirect("dinghotel。aspx?hotel_id=” + hotel_id); }
}
protected void btn_hotelsearch_Click(object sender, EventArgs e)
{ //酒店查询
string str = this.txt_hotelname。Text;
string str2;
string sqltext;
int fjb = Convert.ToInt32(this.txt_fjb。Text);
int fje = Convert.ToInt32(this.txt_fje。Text);
if (this.rbtn_shiqu.Checked)
str2 = "1”;
else
str2 = ”0";
if (str != ”")
{ // 按酒店名称查询
DataTable dt = new DB("Select * from hotel where hotel_name like '%" + str + ”%’").dt();
this.Session[”hotel_find"] = dt;
this.Response。Redirect("searchresult.aspx"); }
else
{ // 按酒店位置和输入的价格范围查询酒店
sqltext = ”select * from hotel where hotel_position=’” + str2 + "' and hotel_gpprice between ” + fjb + " and ” + fje + " and hotel_grade=" + Convert。ToInt32(this。RadioButtonList1。SelectedValue);
this.Session[”hotel_find"] = new DB(sqltext).dt();
this.Response。Redirect("searchresult.aspx”);
}
}
protected void DataList2_ItemCommand1(object source, DataListCommandEventArgs e)
{
if (e。CommandName == ”yd”)
{ inthotel_id = Convert。ToInt32(this。DataList2.DataKeys[e。Item。ItemIndex].ToString());
this.Response。Redirect("dinghotel。aspx?hotel_id=" + hotel_id);
4.6 留言本版块
留言本可以说是网上最常见的,一般用来记载反馈信息。
4.6.1 留言本版块的分析
本留言系统主要包括以下几个部分:显示客户留言内容、添加留言信息、管理员对留言管理和回复、显示管理员回复信息。
4。6.2 留言本版块的实现
4。6.2.1 发表留言
用户在发表留言时,要求用户填写用户名、QQ号码、E_MAIL、来自哪里、选择性别、留言内容等几个部分供选择,其中用户名和留言内容不能为空。
4。6.2.2 留言管理
留言管理包括回复留言、删除留言,以及进行数据库的操作。留言回复通过reply.aspx页面来实现,使用了〈%=request。querystring("id")%〉语句以GET方式完成<FORM〉中数据的提交。
源代码略。
4。7 旅游景点版块
旅游景点版块主要是向浏览用户详细介绍神农架各旅游景区的旅游景点。
4.7.1 旅游景点版块分析
景区介绍版块主要包括以下几个部分:景区的添加、景点的添加、景区的修改、景点的修改、景区的删除、景点的删除。
4.7.2 旅游景点版块设计
景区景点显示需要包含某景区景点列表、景点信息内容显示2部分,景区景点路管理包含景区的添加、景点的添加、景区的修改、景点的修改、景区的删除、景点的删除功能。
4.7.3 旅游景点版块实现
建好数据库后,就可以实现景区景点版块的代码,根据前面给出的景区经典版块结构图,版块实现主要包括景区景点的浏览和景区景点的管理。
4。7.3。1 景区景点信息的浏览
景区景点的信息浏览将数据库中的景点查询出来,并在页面中将景点的名称等几个字段进行列表显示,这样就可以让浏览用户有选择性的浏览信息内容,并且在列表页面提供链接,可以打开页面阅读景点详细内容。
限于篇幅,景区经典及其详细列表页面的源代码在此就不再列出了,jingqu.aspx具有景区景点显示功能的页面。
4。7。3。2 景区景点的管理
景区景点的管理包括景区的添加、景点的添加、景区的修改、景点的修改、景区的删除、景点的删除,以及进行数据库操作的页面。
5 网站系统测试
系统测试是系统开发周期中一个十分重要而漫长的阶段。其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析,系统设计和系统实现的最终审查。系统测试的对象不仅仅是源程序,而应是整个软件,它把需求分析,概要设计,详细设计以及程序设计各阶段的开发文档,包括需求规格说明,概要设计说明,详细设计说明以及源程序,都作为测试的对象。测试的目的就是发现软件的错误。
5.1系统测试的原则
(1)测试工作应避免由原开发软件的个人或小组来承担
(2)设计测试方案时,不仅要包括确定的输入数据,而且包括从系统功能出发达到预期的测试结果。
(3)测试用例不仅要包括合理,有效的输入数据,还要包括无效的或不合理的输入数据。
(4)不仅要检验程序是否做了该做的事,还要检查程序是否同时做了不该做的事。
(5)保留测试用例,作为软件文档的组成部分.
5。2 系统测试的方法
在本系统的测试过程中,采用了目前常用的测试方法,人工测试和机器测试.人工测试包括个人复审,走查和会审.机器测试包括黑盒和白盒测试。在人工测试中先采用个人复审,在网站程序编写完成以后,自己对源程序各个部分进行详细的检查,然后请经验丰富的老师检验一遍,以便发现问题。经过人工测试后,再进行机器测试。通过在计算机直接运行被测程序来发现程序中错误。
系统测试一般有单元测试,组装测试,确认测试和系统测试四个步骤,每一步都是在前一步的基础上进行的.
(1)单元测试
单元测试是测试程序模块及其接口与设计说明的要求是否一致,目的是发现程序编写阶段的错误。它以单个程序模块为测试单位.单元测试是采用白盒测试的方法,根据详细设计的描述,从模块的内部结构出发设计测试用例,进行测试.
(2)组装测试
对每个模块完成了单元测试以后,需要按照设计时做出的层次模块图把它们连接起来,进行组装测试。
(3)确认测试
经过组装,软件己装配完毕,接下来进行的确认测试是以整个软件作为测试对象,且采用黑盒测试方法。确认测试内容主要包括以下几部分。
功能测试:检测软件需求规格说明书的内容是否全部实现。
性能测试:检查软件的可移植性,兼容性,错误恢复能力以及可维护性等性能指标,以检测软件功能实现的程序。本系统只要安装了Internet Information Server(IIS5。0)就可以使用,对于出错发生,系统可以自动警告。
配置审查:检查被测软件的全部构成是否齐全,质量是否合乎要求,应有维护所需的全部细节,并且是否编好目录.
(4)系统测试
系统测试是将信息系统的所有组成部分包括软件,硬件,用户以及环境等综合在一起进行测试,要在系统的实际运行环境现场,在用户的直接参与下进行.包括集成功能测试,可靠性与适应性测试,系统自我保护及恢复能力的测试,安全性测试,强度测试。
(5)安全测试
安全是网站管理中的一个重要环节,现在各种网站都存在着一些漏洞和不足,当然本网站中也可能存在,但已在尽力弥补这些安全漏洞。如在登录监测用户时,能自动过滤一些特殊字符的登录.假若没有在网页中设置这个过滤监测,以此为用户名和密码登录的用户有超级管理员所拥有的权限,更严重的甚至能控制整台服务器;对有上传图片的操作,上传的文件都进行了自动重命名,并将扩展名统一改为gif、jpg,为此避免上传ASP,ASA,等扩展名的木马网页;还有网站中也采用了别人在安全方面做得好的方面。
5。3 网站系统测试结果
在测试的过程中,最重要的还是测试系统的数据检错功能和前后台操作显示与数据库内数据的一致性。
所谓的系统的数据检错,主要对合法字符的检测,最大长度的检测,整数的检测,邮箱的检测,权限的检测等等。
所谓数据库一致性的检测,主要是用户下了订单,或者管理员添加、删除、编辑了某项内容,数据库中会不会马上更新,在数据库中的内容是否与操作后的一样等等。
经过我对网站的集中测试和演示,各部分的测试结果如下:
1)、网站页面:网站大部分页面中使用ASP。NET技术设计,而且直接影响到下一级页面的运行,所以对主页的测试比较详细。基本上对前台能操作的一些功能模块进行了测试。测试后发现主页中要实现的功能都可以正常运行,并且各项页面间的连接都符合设计要求。数据检错基本上都达到要求,预订中心中所预订的线路,酒店的定单能在后台中出现,且与数据库中的完全一致。
2)、网站后台管理:后台的进入能可成功检测用户是否合法,合法用户可正常进入后台管理各种信息,不合法用户无法进入后台。如对线路分类的添加,删除,修改;对景点图片的上传,删除等;修改等众多功能都进行了一系列的测试,基本都符合设计要求.
3)、留言本:此模块是前台直接操作的,用户可以在留言版中留言的。
对于其余模块的测试,就不再一一举例了。以上提到的只是我测试中的一小部分内容,以防论文整体的烦索性,这里就没有全部写到。
6 论文小结
本论文主要从网站可行性分析、需求分析、概要设计和数据库设计、网站详细设计和系统测试五个方面详细介绍了本网站的开发过程。
6。1 网站的功能
本网站采用成熟的信息技术和手段,可应用于信息管理。网站主要由旅游新闻、旅游线路、旅游酒店、留言系统、旅游景点、旅游图片等几大版块组成。
6。2 网站特点
本网站界面友好,功能齐全.使用
http://ASP.net的程序设计语言,利用用Macromedia Dreamweaver MX、Fireworks为本网站设计出了美观精致的人机界面和简便快捷的操作方式,网站大量采用直接网页,用户只需通过一系列简单的选择与系统进行数据交互操作,力求使用自行输入到最少,以减少人为差错,极大方便了用户使用.
数据易于修改和维护,查询十分方便,能提供多种组合条件方式进行查询,快速而准确,并设计了多种表格,来满足用户的需求。
6。3 网站评估与改进方向
由于是第一次独立开发网站,加之时间仓促,网站中存在着许多不足之处,功能还很不完善、界面不够完美等.对系统的安全性、完整性控制也有待进一步加强,确保系统中数据的完整、正确。
6。4 开发体会与收获
通过本网站的开发使我熟悉掌握了Macromedia Dreamweaver MX2004、
http://ASP.net动态网站开发方法,加深了对数据库知识的理解和运用,以前很多抽象、枯燥的理论知识通过这次网站开发也得到进一步的理解和掌握。在网站开发过程中,也认识到自己存在很多不足,由于是第一次独立开发网站,在开发过程中我遇到了许多料想不到的困难.对一些比较深奥专业的技术问题自己有时无法解决,后来在指导老师、同学们的帮助下,得到了很好的更正;同时由于本人对网页设计、美工方面掌握的不是很好,也就使得网站的美观方面做的不是太好,所以在以后的工作中,会加强这方面的学习。
通过本次的系统开发使我认识到一个网站的开发是个系统工程,需要各个方面知识的密切配合,如网页美工、设计,前台系统开发、后台系统开发都需要做好充分的需求分析,开发过程中每一步都要考虑全面、周到,编写都必须正确、完整,否则就会给下一步的工作带来麻烦,加重工作量,因为它们是紧密联系,一步都是以另一步为基础的。
同时,我们还认识到网络对我们学习的重要性,在本次网站开发过程中,许多困难问题都是通过网上论坛、网上搜索得到解答的,所以,学会利用网络获得知识也是本次站点开发的一大收获。
参考文献
[1] MatthewMacdonald.
http://ASP.NET完全手册[M] .杭州:电子工业出版社,2003.
[2] SanjeevRohilla SenthilNathan SurbhiMalhotra著 陈君王宝良译.
http://ADO.NET专业项目实例开发[M] .杭州:中国杭州水利水电出版社,2003.
[3] 章立民.用实例学ASP.NET(使用C#与ADO.NET)[M] .杭州:电子工业出版社,2004.
[4] ScottWorley著 王文龙 刘湘宁译。ASP。NET技术内幕[M] .杭州:人民邮电出版社,2002 。
[5] 余金山.SQL Server 2000编程指南[M] .杭州:杭州希望电子出版社,2001 。
[6] 齐亚平.在ASP.NET中的动态数据绑定[J].杭州航空技术高等专科学校学报,2003.
[7] 网冠科技.ASP。NET时尚编程百例[M] .杭州:机械工业出版社,2004.
[8] 严蔚敏,吴伟民, 数据结构[M] .杭州:清华大学出版社,1997.
[9] 胡社. HTML编程。 杭州:人民邮电出版社,1999.
[10] 李廉,Web服务器技术指南.杭州:机械工业出版社,1995。
[11] 苏冠霞 叶念渝.Web环境下基于ASP.NET的用户授权管理[J] .兵工自动化,2005.
[12] 金旭亮.网站建设教程。 第一版。杭州:高等教育出版社,2003年。
致 谢
通过这次毕业设计,使我感到高科技、新知识的力量。这次毕业设计过程中,学校图书馆提供了是丰富的书籍,院系给予的大力支持,给我提供了宽松、自由的学习环境,也得到了我的指导师-—周洁如老师和其他老师的的精心指导,还有计科学院的几位同学也给予了很大的帮助。特别感谢周洁如老师一直对我悉心指导和热情关怀,对于在毕业设计中遇到困难她总是不遗余力的帮助和指导。她和蔼待人、严谨的工作态度都非常值得我学习。
在此再一次表示衷心的感谢!