基于BS结构的旅游网站的开发与设计.docx
《基于BS结构的旅游网站的开发与设计.docx》由会员分享,可在线阅读,更多相关《基于BS结构的旅游网站的开发与设计.docx(25页珍藏版)》请在冰豆网上搜索。
![基于BS结构的旅游网站的开发与设计.docx](https://file1.bdocx.com/fileroot1/2023-2/1/2d1a8f81-3a94-479a-8de4-2c2a9b46656d/2d1a8f81-3a94-479a-8de4-2c2a9b46656d1.gif)
基于BS结构的旅游网站的开发与设计
分类号:
TP315UDC:
D10621-408-(2007)5953-0
密级:
公开编号:
2003211189
成都信息工程学院
学位论文
基于B/S结构的旅游网站的开发与设计
论文作者姓名:
冯杨琴
申请学位专业:
网络工程
申请学位类别:
工学学士
指导教师姓名(职称):
韩桂华
论文提交日期:
2007年06月08日
基于B/S结构的旅游网站的开发与设计
摘要
自互联网成为一种革命性的大众媒体以来,其发展速度之快令人惊叹。
作为世界最大朝阳产业的旅游,当它与电子商务这一新兴模式相结合时,其潜藏的商业价值表露无遗。
旅游电子商务的应用可以作为我国旅游业新的市场营销手段,增强我国旅游业的对外竞争力,为旅游业的长期发展积蓄后劲。
通过旅游网站系统的建设以实现为公司或企业提供信息化管理,并建立B/S结构的网络服务体系。
系统页面采用DreamweaverMX2004进行制作,后台数据库由SQLServer2000支持,动态网页的效果由ASP语言实现。
采用软件工程的方法,开发了一个简单的旅游网系统,同时结合用户需求实现了用户注册登陆、浏览、查询等功能,降低用户的旅游成本的同时还节约了大量时间,为用户提供了极大的方便。
关键词:
互联网;电子商务;旅游网站系统;数据库
TheDevelopmentandDesignofTravelingWebsiteBasedonB/SStructure
Abstract
SincerevolutionaryofInternetbecomingpopularandmediadevelopingsofast,itmakesussurprised.Traveling,beingthebiggestrisingindustryintheworld,showsitspotentialcommercevalueswhenitcomeswiththeelectroniccommerce.Theapplicationsoftravelingelectroniccommercearenewwaysoftravelindustrymarketpromotinginourcountry,theycanenhanceourstrengthcompetitionwithothercountriesandmakeupstaminaforalong-termdevelopmentofourtravelindustry.Inordertoprovideinformationaladministrationstoenterprises,thousandsofwebsitesofInternet-TravelingSystemsbasedonB/SStructurehavebeenbuiltup.
ThewebpagesaremadebytheDreamweaverMX2004platform,andthebackupissupportedbySQLServer2000database,finallyASPlanguageisusedtoimplementtheeffectofdynamicpage.Accordingtothesoftwareengineeringmethods,wehavedevelopedasimplewebsiteofInternet-Travelingsystem;thesystemcombineswithcustomer’srequirementarefeaturedwithmanyfunctions,suchas,userregistration,login,query,etc.Itcanreducethetravelingcost,meanwhile,cansavealotoftimefortravelersaswell.Thesystemprovidesahugeconveniencetotheusers.
Keywords:
Internet;ElectronicCommerce;TravelingWebsiteSystem;Database
论文总页数:
22页
1引言
1.1课题背景
自互联网internet成为一种革命性的大众媒体以来,其发展速度之快令人惊叹。
而作为世界最大朝阳产业的旅游,当它与电子商务这一新兴模式相结合时,其潜藏的商业价值表露无遗。
根据CNN(美国有线电视新闻网)公布的数据,全球旅游电子商务已连续5年以超过350%的速度发展,1999年度全球电子商务销售额突破1400亿美元,其中旅游电子商务销售额突破270亿美元,占全球电子商务销售总额的1/5强,占电子商务应用的最大份额;全球现有约超过17万家旅游企业在网上开展旅游服务,享受过旅游网站服务的超过8500万人次。
因特网上作为中间环节的初创公司和旅游代理商将继续活跃于网络旅游业市场中。
中间商和旅馆业,航空公司和租车公司之间激烈的竞争也将继续存在。
传统的网下公司,如旅馆定位系统,逐渐从电话定位转型到网上定位来增加自身的竞争力。
目前,旅游代理商及中间商的收入超过网络旅游业总收入的一半以上。
由此看来,旅游电子商务的前景是非常诱人的。
1.2国内外研究现状
在美国,旅游业的电子化和网络化成为不可阻挡的历史潮流,席卷了从欧美到亚太的每一个国家,北美、日本和欧洲一些国家的旅游电子商务网站和在线交易均已形成了相当可观的规模。
美国是全球电子商务发展的领头羊,可以说它的发展现状也代表了一定时期内其他国家电子商务的发展取向。
美国的旅游网站及其提供的服务可大致分为三大类:
旅游搜索引擎、在线旅行社、在线航空公司。
在欧洲,按照《欧洲在线旅游市场》最新报告显示:
2000-2002年,欧洲旅游在线市场经过了一轮迅猛发展。
报告预计欧洲在线旅游市场将增长超过三倍,2000年旅游市场销售额为290万美元,到2002年超过了1090万美元。
虽然欧洲在线旅游起步比美国晚几年,但是最终它们会保持同步的发展。
我国是一个旅游资源大国,地大物博,文化传统源远流长,在过去的20年,中国已经从旅游资源大国发展成为亚洲旅游大国,今后20年,中国将成为世界旅游强国。
根据世界旅游组织预测,到2020年,我国将成为世界最大的旅游目的地,并成为世界第四大旅游客源国,届时,中国每年接待的入境旅游者将达到1.37亿,每年也将有1亿的中国旅游者将出境、出国旅游。
1.3本课题研究的意义
旅游电子商务的应用可以作为我国旅游业新的市场营销手段,可以增强我国旅游业的对外竞争力,为旅游业的长期发展积蓄后劲。
目前我国旅游依靠市场自发增长的空间已经不大,市场正开始从自发性增长向促销性增长转变,提高促销效果将是我国旅游业能否保持长期高速成长的关键。
采用旅游电子商务形式首先可以使旅游产品在面对多家外国旅行商的同时,深入客源国的家庭,即时购买的实现也为散客提供了极大的便利。
我国入境旅游市场中,散客一直占60%左右,而且人均花费、停留天数等指标远远高于团队,电子商务能适应国际散客潮的需要,把单纯面向旅行商的促销方式改变为立体化全方位的促销形式。
随着旅游市场的蓬勃发展,我国已成为世界上最大的旅游市场,旅游公司的数量也越来越多,中国加入WTO以后,一些实力较强的国外旅行社将凭借其先进的操作经验和管理方法,迅速介入中国市场,运用其强大的网络服务功能和“一条龙”操作模式抢占市场,使旅行社之间的竞争更加激烈,国内旅行社的市场份额将有所减少,一部分实力不强的旅行社交面临被淘汰的危险。
反观当前大多数国内公司的业务仍然停留在手工或文档资料处理阶段,传统的运作模式已无法再适应当今市场的快速发展,要想锁定客户、开辟市场,只有通过加快内部信息化建设和外部的客户关系管理,才能提高工作效率,降低经营成本,留住客户,从而提高企业的竞争力。
1.4本课题的研究方法
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和网站管理于一身的所见即所得网页编辑器,是一种可视化网页制作工具,利用它可以轻松地制作出跨越平台限制和跨越浏览器限制的动态网页。
可以运用dreamweaver来开发ASP网站。
通过平面设计工具以及代码提示、标签编辑器、可扩展色彩代码、标签选择器、片段和代码检验这类编码特性来实现对代码和设计的管理。
SQLServer提供强大的开发工具和各类开发特性,在大大提高开发效率的同时,进一步拓展应用空间,带来新的商业应用机遇。
ActiveServerPages(ASP)是服务器端脚本编写环境,是由Server端脚本、对象以及组件拓展过的标准主页使用它可以创建和运行动态、交互的Web页和基于Web的功能强大的应用程序。
ASP采用的工作模型是典型的B/S过程:
1.一个用户在浏览器的网址栏中添入ActiveServerPages文件名称,并回车触发这个ActiveServerPages的申请。
2.浏览器将这个ActiveServerPages的求发送给IIS。
3.WebServer接收这个申请要求并由于其.asp的后缀意识到这是个ActiveServerPage的对象来实现服务器与客户端间的交互;可扩充服务器端功能。
利用ASP提供的一组ActiveX服务器组件(ActiveXServerComponents)可继续扩充ASP的功能。
如用ASP内置ADO组件可以轻松的存取各种数据库。
此外,还可以用VB,Java等语言开发自己的组件以进一步扩充其功能;ASP与浏览器无关,ASP可以将运行结果以HTML的格式传送到客户端浏览器,因而可以使用于各种浏览器。
一个HTML文件中包含了所有将显示在网页上的文字信息,其中也包括对浏览器的一些指示,如哪些文字应放置在何处,显示模式是什么样的等。
如果你还有一些图片、动画、声音或是任何其它形式的资源,HTML文件也会告诉浏览器到哪里去查找这些资源,以及这些资源将放置在网页的什么位置。
浏览的网页就是由HTML语言编写出来的。
虽然HTML是一种语言,但HTML不是程序语言,如C++和Java之类,它只是标示语言,你只要明白了各种标记的用法便算学会了HTML。
HTML的格式非常简单,只是由文字及标记组合而成,因此任何文本编辑器都可以制作HTML页面。
在编辑器中输入html代码即可完成对网页的设计,如果在其中加入VB,JAVA等脚本文件以及数据库连接有关的语句指令,便可对已知数据进行查询,从而生成动态网页的一部分。
2需求分析
2.1需求分析
旅游网站系统的数据功能主要体现在对各种信息的提供、保存、更新和查询操作上,包括用户信息,管理员信息,景点信息,预约信息和留言内容,各个部分的数据内容又有内在的联系,针对此系统的数据库的特点,可以总结如下的需求:
用户和管理员具有不同的身份;
用户信息记录用户资料;
旅游景点的浏览,显示景点相关属性;
景点图片,相应景点的图片;
成都故事的浏览;
旅游线路的查看;
旅游线路的查询,根据不同条件对线路进行查询;
预定有预定的时间、预定的用户等多种属性;
用户留言版有留言内容,时间等多种信息;
结合以上功能模块可以得到如下图2-1和2-2所示:
图2-1用户部份数据流图
图2-2管理员部份数据流图
2.2数据库概念结构设计
结合上面的需求分析以后,就可以设计出能够满足需求的各种实体,以及它们之间的关系,再用实体-关系图,将这些内容表述出来,为后面的逻辑结构设计打下基础,如下图2-3和2-4所示:
图2-3用户部份实体E-R图
图2-4管理员部份实体E-R图
2.3数据库逻辑结构设计
数据库的概念结构设计完毕以后,现在可以把数据库概念结构转化为SQLServer数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。
旅游网站系统数据库中各个表的设计结果如表1~表10所示。
每个表格表示在数据库中的一个表。
表1管理员信息表
列名
数据类型
长度
允许空
备注
admin_name
nvarchar
12
否
管理员名
admin_psw
nvarchar
16
否
管理员密码
表1为管理员信息表,记录了管理员的用户名和密码。
表2景点信息表
列名
数据类型
长度
允许空
备注
attrid
char
19
否
景点编号
attrname
varchar
50
否
景点名称
attrintro
ntext
16
否
关于景点介绍
表2为景点信息表,记录了景点相关信息。
表3景点图片表
列名
数据类型
长度
允许空
备注
attrid
varchar
19
否
景点编号
imgid
varchar
19
否
图片编号
content
image
16
否
图片
表3为景点图片表,记录了景点图片的相关信息。
表4用户信息表
列名
数据类型
长度
允许空
备注
usr
varchar
15
否
用户登陆名
pwd
varchar
15
否
用户登陆密码
realname
char
10
否
用户真实姓名
sex
char
2
否
用户性别
age
tinyint
1
否
用户年龄
tel
varchar
15
否
用户电话
regtime
smalldatetime
4
否
用户注册时间
lastlogin
datetime
8
是
上次登陆时间
表4为用户信息表,记录了用户名、密码和有关用户的个人信息。
表5线路信息表
列名
数据类型
长度
允许空
备注
lineid
char
19
否
线路编号
linename
vaarchar
50
否
线路名称
linetype
char
10
否
线路类型
lineintro
ntext
16
否
线路介绍
booked
Int
4
否
是否预定
price
Money
8
否
线路价格
表5为线路信息表,记录了线路相关信息。
表6景点线路表
列名
数据类型
长度
允许空
备注
lineid
varchar
19
否
线路编号
attrid
varchar
19
否
景点编号
表6为线路景点表,记录线路和景点相关信息。
表7预约信息表
列名
数据类型
长度
允许空
备注
bookid
char
19
否
预定编号
lineid
char
19
否
线路编号
booker
varchar
15
否
预定
booktime
smalldatetime
4
否
预定时间
outtime
smalldatetime
4
否
出发时间
表7为预约信息表,记录预约情况的相关信息。
表8首页内容表
列名
数据类型
长度
允许空
备注
title
varchar
50
否
首页内容
content
ntext
16
否
首页图片
表8为首页内容表,记录首页的相关信息。
表9留言表
列名
数据类型
长度
允许空
备注
msgid
char
19
否
留言编号
username
varchar
15
否
留言者姓名
face
varchar
10
否
留言头像
ip
varchar
20
否
留言的IP
addtime
smalldatetime
4
否
留言时间
content
ntext
6
否
留言内容
ishidden
int
4
否
留言被允许
replytime
smalldatetime
4
是
回复时间
replycontent
ntext
16
是
回复内容
表9为用户留言表,记录用户留言的相关信息。
表10故事信息表
列名
数据类型
长度
允许空
备注
title
varchar
50
否
故事标题
content
ntext
16
否
故事内容
addtime
smalldatetime
4
否
发表时间
表10为故事表,记录添加故事的相关信息。
3系统的设计与实现
3.1公共模块
数据库连接文件:
旅游网站系统开发使用的是ASP+SQL的工作模式,为了使系统正常工作,需要建立与数据库系统的连接来读取和写入数据。
系统中很多页面都涉及数据库有关的操作,包括查询、插入、删除等在执行这些操作时首先要与数据库系统进行连接,以下是数据库连接代码:
<%
dimconn
setconn=server.Createobject("ADODB.connection")
conn.open"driver={SQLserver};server=(local);database=ly;uid=yq;pwd=123"
%>
页面头文件和页面尾文件:
页面头文件指定了页面头部的图片并在其上设定了“热点”页面尾包括版权信息和联系方式,这些文件在各个页面都是静态的且一致的,我们将它们保存在公共文件夹inc中,直接在相应页面嵌入这样的语句
--includefile=“inc/head.asp--”>或
--includefile=“inc/foot.asp--”>即可。
判断用户和管理员是否登录函数:
由is_admin.asp,is_user.asp完成,同时提供了一个函数char.asp是用于字符串的过滤。
使用方法同页面头文件和页面尾文件是一样的。
3.2用户功能模块
3.2.1注册模块
该模块主要能通过表单来接收用户注册所填的信息并对此信息进行记录,首先连接数据库,验证用户信息,记录用户信息。
用到的核心功能由下面的插入语句完成如下:
<%
sql="insertintoguests(usr,pwd,realname,sex,age,tel,regtime)values('"&usr&"','"&pwd&"','"&realname&"','"&sex&"','"&age&"','"&tel&"','"&now()&"')"
%>
其登录界面如下图3-1:
图3-1用户注册模块截图
用户填好相关信息点击注册便可注册。
首页和登录模块如图3-2:
图3-2用户登录成功截图
包括简单的用户统计、检测用户是否登录等功能、从数据库读取首页显示的文本和图片。
检测用户是否登录主要语句如下:
<%session("guestid")=""%>(检测用户登录)
登录后显示用户信息需要从guests表中查询信息主要用到一个查询语句如下所示:
<%sql3="select*fromguestswhereusr='"&session("guestid")&"'"%>
3.2.2和线路的查看功能模块
用户登录后可直接对景点和故事进行浏览,分别牵涉到从数据库中表attractions、attrimg、story、line中读取数据并显示。
使用
--includefile=”connections/ly.asp”>来连接数据如下图3-3
景点查看:
图3-3查看景点界面截图
该功能中主要有一个打开数据库查询和循环读取数据库中数据的操作,其主要语句如下:
查询景点信息表:
<%sql1="select*fromattractionsorderbyattriddesc"%>
循环读取操作:
<%dowhilenotrst1.eof
response.Write("●id="&rst1("attrid")&">"&rst1("attrname")&"
")
rst1.movenext
loop%>
故事查看:
图3-4浏览故事界面截图
用户可以点击左边的链接了解详细的信息。
线路查看如图3-5:
图3-5查看线路界面截图
用户可看到相关信息,可通过链接去到预定页面,也可点击线路了解线路的详细信息。
3.2.3线路查询模块
该模块仍然牵涉到数据库的操作,是本系统相对重要的模块,该模块根据用户提供的信息查询表line,显示符合条件的线路。
根据景点名称的查询结果如图3-6:
图3-6据景点名称查询结果截图
根据类型的查询结果如图3-7:
图3-7据景点类型查询结果截图
根据价格的查询结果如图3-8:
图3-8据景点价格查询结果截图
用户只要输入查询的关键字,并选择查询条件就能实现查询。
主要是一个接收数据和将接收到的数据同数据库中的数据进行比较的查询操作语句如下:
接收数据:
<%
attrname=request.form("attrname")
types=request.Form("radiobutton")
%>
查询操作:
<%
sql1="select*fromattractionswhereattrnamelike'%"&attrname&"%'"
%>
<%sql1="selectlineattr.*,line.*fromlineattr,linewhereline.lineid=lineattr.lineidandline.linetypelike'%"&attrname&"%'"
%>
3.2.4线路预定模块
该模块是本系统最核心的模块,首先验证身份,判断预定时间,用户登录时间精确到秒加上一个两位随机数生成预定编号,最后将相关预定信息写入数据库。
主要是一个身份验证和一个编号的产生再加上一个插入数据库和更新操作,语句分别如下:
验证身份:
<%ifsession("guestid")=""thenresponse.Redirect("guestlogin.asp")%>
预订编号的产生:
<%randomize
dd=right("00"&rnd()*100,2)
bookid=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&dd
%>
插入数据:
<%sql2="insertntobooks(bookid,lineid,booker,booktime,outtime)values('"&bookid&"','"&lineid&"','"&session("guestid")&"','"&now()&"','"&outtime&"')"
%>
更新操作:
<%sql3="updatelinesetbooked=booked+1wherelineid