州忻市公交车线路查询系统的设计与实现本科毕业设计Word文件下载.docx
《州忻市公交车线路查询系统的设计与实现本科毕业设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《州忻市公交车线路查询系统的设计与实现本科毕业设计Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
参考文献21
忻州市公交线路查询系统的设计与实现
摘要:
目前,城市公交乘客信息系统的发展处于一个较落后的水平,广大乘客可以获得信息的方式很少。
为了改善这种现状,加快发展城市公交信息化,设计一个城市公交查询系统具有一定的意义。
论文在分析了公交运营的实际情况和不同公交乘客的实际需求后开发了一个忻州市公交线路查询系统。
该系统在windowsxp下,采用ASP与ACCESS结合的方式,主要包括二个模块---查询模块(按线路查询、按站点查询和换乘查询)和管理更新模块(公交站点管理和公交线路管理)。
经测试,该系统具有较高的实用性。
关键词:
公交查询ASPACCESS
Abstract:
Atpresent,Thedevelopmentofthebuspassengerinformationsystemisinalevelthatfallbehindofthecityinourcountry,Thelargepartofpassengerscanacquirefewwaysoftheinformation.Soit'
spracticalforustodevelopcity'
sbuspassengerinformationsysteminordertoimprovingthiscondition.Fromthisdesign,thesisanalyzedthepresentconditionofthebuspassengerinformationanddifferentpeople'
sneeds,thedesignofthexinzhouPublicTransportInformationSystem.Underthewindowsxp,UsingASPandACCESStodesignthebusinformationsystemofxinzhou,Thesefunctionscanbedividedintotwoparts---searchsystem(Accordingtothelinesearch、stationsearchandbetweentwostationssearch)andmanagementupdatesystem(BusstationmanagementandBuslinemanagement).Tested,thesystemhasmorepractical.
Keywords:
publictrafficinquireASPAccess
1引言
1.1研究背景及现状
城市公交是专门服务于市民出行的客运企业,是城市社会和经济活动的重要组成部分。
伴随着国民经济和城市建设的快速发展,城市经济的繁荣,人口的增加,城市必须解决好人们出行的需求。
城市公交直接关系着城市的经济发展和居民生活,对城市经济具有全局性、先导性的影响,城市公交以其方便、快捷、容量大而成为城市交通的主体。
但是随着公交系统的庞大,人们很难得到准确的公交信息,这样给一些人的出行就带来了不便。
因此,急需一个方便、快捷的公交信息查询方式,本系统通过浏览器查询,实现中心控制、自动更新、更多的查询方式等等实现更多更强大的功能。
随着城市经济的发展、规模的扩大以及人口的增长,城市交通问题日益突出。
降低出行时间将使所有的公交利用者产生效益,快速的交通、更好的信息及更好的市场可以提高公交的形象,能够增加公交乘坐者。
城市公共交通运输以其覆盖面广、经济、快捷的特点,成为绝大多数出行者的首选方式,也是各地城市政府大力发展的一种交通方式。
本地市民特别是外来旅游、出差、就医等急需了解本地道路情况的人可以利用本系统方便快捷的查询出所有符合他们要求的公交路线,对他们的出行和生活提供帮助。
我国城市公交乘客信息系统的发展处于一个落后的水平,广大乘客可以获得信息的方式很少,公交信息的完整性和准确性得不到保证,而且还没有专门的机构负责信息的发布和管理。
出于这个目的,在老师的指导下,设计了这个城市公交线路查询系统。
在对公交乘客出行心理特征进行分析的基础上,考虑乘客选择公交线路决策的因素,进行程序关键部分的框架设计。
现阶段,人们的出入方式主要还是来源于城市公交,特别是对于那些到外地出差、打工,进行商业有关或其他事情需要在外地进行短暂停留的人而言,公交对他们是必不可少的,但是对于那个不属于自己所熟悉的城市,坐公交也是一个很大的难题,因此,开发一个公交查询系统就显得非常的重要。
1.2网站简介
本系统在对忻州市公交进行调查后,得出线路及站点数据录入数据库。
在以公交查询为主,又介绍了该地区的景点、住宿、特产。
起到了宣传的效用。
系统分两大模块:
用户查询模块和管理员模块。
用户查询模块实现公交的查询具体包括公交线路查询、站点查询、换乘查询。
管理员模块包括对管理员的添加、修改、删除的功能及对公交线路站点的添加、修改、删除功能。
1.3网站开发环境
硬件环境:
处理器P
以上,主频至少2.0G;
内存512M以上;
显卡:
TNT2显示适配器;
硬盘40G以上。
软件环境:
MicrosoftWindowsXP操作系统;
IIS服务器;
Microsoftaccess2003数据库软件;
Dreamweaver8应用软件;
Photoshop7.0图片处理软件。
2需求分析
开发忻州市公交车线路查询系统的第一步是进行需求分析,需求分析是介于网站分析和设计阶段之间的重要桥梁。
需求分析的好坏直接决定着网站能否真正满足用户的需要,指导开发网站进一步深入。
本网站的总体目标是为忻州市民及旅客提供便捷的公交查询服务,减免由于对路线的不熟悉而导致时间的延误。
2.1用户需求描述
忻州市公交线路查询系统进行需求分析时,考虑以下几个方面:
系统用户、网络要求、系统要求、数据需求。
系统用户主要是出行前和出行途中的查询者,针对这种情况,开发网络程序应发布在地方网站及公交网站上,例如公交公司局域网、忻州公交网。
借助网络的功能,能够提升忻州市公交查询系统的效率。
系统要求包括硬件配置要求、软件配置要求两方面。
鉴于主要针对公交信息的查询,设计与开发时,需要忻州市的公交站点和公交路线的数据信息,例如:
公交站点通车的早晚时间、票价的安排等等。
查询者能够通过输入相应查询条件,得到自己满意的答复。
查询者通过选择某个公交线路的名称后了解该线路的基本信息,例如票价、早晚发车时间等,并且选择该线路上的公交站点,确定自己在哪一站下车。
反而言之,在选择了某个具体的公交站点后应该了解到该站点的路过公交线路。
如果查询者所查询的站点没有公交直达,系统会给出换乘方案,供用户参考。
系统管理者具有普通查询者的权限,还通过有效权限登录,对系统的空间数据和属性数据进行管理,例如:
更改、删除、添加等等。
忻州市公交车线路查询系统网站的数据流程图如图2.1所示。
图2.1“忻州市公交车线路查询网站”的顶级DFD
2.2可行性分析
1、经济可行性:
忻州市公交车线路查询系统网站包括硬件投资、软件开发费用及其它费用。
它为出行人员提供所需的信息,方便出行人员的路途及时间,使得查询更加公开准确。
由于开发此网站所需的成本比较低,因此在经济上完全可行。
2、技术可行性:
Access是一种简单,界面友好的数据库,ASP是设计动态网页的一种最新技术,所以技术方面也是完全可以的。
3、管理可行性:
到目前为止,我市的公交查询工作还依靠在站牌前查询,因此开发本系统在管理上势在必行。
由以上经济、技术、管理三方面的分析可以看出,本网站的开发时机成熟,从多角度考虑都是可行的。
2.3网站需求分析
本系统采用结构化设计的方法来实现系统总体功能,提高系统的各项指标,即将整个系统合理的划分成各个功能模块,通过对模块的设计和模块之间的系统关系来实现整个系统的功能。
前台主要有线路查询、站点查询、换乘查询3个模块。
功能名称:
线路查询
功能概述:
可以获得要查询公交所通过的各个站点。
站点查询
通过输入的指定站点查询经过该站点的公交。
换乘查询
主要体现那些不可直达需要转车的路线的换法。
(如果用户输入的起始点和终点,有一条及一条以上的公交线可以直达的,则为公交直达;
如果输入的起始点和终点,没有一条公交线可以直接到的,系统将会给出一次换乘的方案,则为公交一次换乘)
后台管理。
用于管理员登陆,添加、修改、删除公交线路,修改信息资料、安全密码,回复留言等功能。
3网站设计
3.1网站功能设计
忻州市公交车线路查询系统是以ASP和ACCESS为核心开发的,该系统界面简单友好,所有操作十分简单。
该系统主要包括线路查询模块,住宿查询模块,景点查询模块,特产查询模块,主要模块具备以下功能:
一、线路查询
1、公交线路查询:
可以获得要查询公交线路所通过的各个站点。
2、公交站点查询:
通过输入的指定站点查询经过该站点的公交线路。
3、公交换乘查询:
4、管理员登陆:
用于管理员对后台数据库的管理。
5、留言薄:
专为旅客留言或路线报错设计。
二、住宿查询:
提供忻州市周围酒店宾馆联系方式及地点。
三、景点查询:
忻州市及所属各县名胜古迹。
四、特产查询:
忻州市及所属各县特产小吃。
根据以上功能描述,得出该网站的功能模块图如图3.1所示。
图3.1网站功能模块图
3.2数据库分析和设计
3.2.1数据库需求分析
1、信息需求:
通过调研了解到忻州市公交具体线路及站点停靠位置。
数据库中包括公交车车次线路、公交车停靠站点、乘车价格和发车时间。
2、处理方法:
一般用户无法操作数据库以及后台,只有管理员可以登录该网站后台或直接进入库中对信息进行修改。
3、安全性要求:
除管理员外,一般用户只能按照网站程序提示对线路进行查询,不能修改任何数据,这样可以保证数据库真实、可靠。
3.2.2数据库逻辑结构设计
本网站所涉及到的主要实体数据表有:
1、车辆资料信息表:
用来存放车辆的各种参数,包括车辆线路号、票价、首尾班时间。
2、管理员表:
用来存放管理员的账号及密码。
3、路线表:
用来存放车辆线路数量、名称、站点。
4、站点表:
用来存放车辆所经过的站点汇总。
本系统的总体E-R图如图3.2所示。
表3.1Bus表和字段名称数据类型
字段名称
数据类型
字段说明
qmbus_id
自动编号
一
qmbus_name
文本
公交车线路号
qmbus_rate
乘车价格
qmbus_ratebz
备注
time
日期时间
首尾班时间
表3.2Admin表字段名称数据类型
qmadmin_user
管理员登陆账号
qmadmin_pass
管理员登陆密码
表3.3Route表字段名称数据类型
qmroute_id
记录路线数量
qmroute_name
记录线路名称
qmroute_address
记录线路各站点
表3.4Station表字段名称数据类型
qmstation_id
qmstation_name
公交车站点名
qmstation_bus
过站点的车线路
qmstation_addupdate
添加/修改时间
qmstation_char
站点字母
3.3数据库连接
在动态网站中,调用数据库中的数据是十分频繁的,为了避免编写重复的代码。
编写一个数据库连接文件是非常重要的。
conn.asp文件中包含了本系统中的数据库的连接代码。
本系统的数库库的连接代码如下:
dimconn
dimconnstr
dimdb
db="
/xzbus/data/busdata.mdb"
Setconn=Server.CreateObject("
ADODB.Connection"
)
Setconn1=Server.CreateObject("
connstr="
Provider=Microsoft.Jet.OLEDB.4.0;
DataSource="
&
Server.MapPath(db)
conn.Openconnstr
conn1.Openconnstr
IfErrThen
err.Clear
response.write("
数据库连接出错,请检查连接字串。
"
4网站实现
4.1用户登录模块的实现
图4.1网站主页
忻州市公交线路查询系统登录界面如图4.1所示,该界面简单友好,易于操作。
用户可在该主页下选择所需要的服务。
4.2线路查询模块的实现
线路查询模块是本网站所实现的主要功能,包括线路查询、站点查询、换乘查询三个模块。
主界面如图4.2所示。
图4.2线路查询模块图
<
divclass="
header"
>
公交线路查询<
/div>
content"
线路名称:
<
inputtype="
hidden"
name="
k"
value="
pp"
inputmaxlength="
100"
size="
40"
q"
inputtype=submitvalue="
线路查询"
formaction="
qm.asp"
method="
get"
qm1"
autocomplete="
off"
search"
公交站点查询<
站点名称:
p"
inputid="
q2"
maxlength="
站点查询"
br/>
选择输入:
selectname="
char"
id="
onchange="
GetStationByChar(this.value);
<
optionvalue="
请先选择站点分类<
/option>
再选择站点名称<
公交换乘查询<
起点名称:
p2p"
q3"
换乘查询"
选择输入:
GetStationByChar3(this.value);
4.2.1公交线路查询
用户进入系统后,在线路查询模块的输入框中输入要查询的线路,点击线路查询按钮,系统首先检查用户所查询的线路是否存在,如果不存在给出错误提示。
如果存在给出这条线路的相关信息。
界面如图4.3所示。
图4.3线路查询图
%
qmroute_name=request.QueryString("
ifrequest.Form.count>
0then
qmroute_name1=request.Form("
qmroute_name"
ifqmroute_name1="
then
callShowErr("
请选择要查询的线路!
"
1"
endif
response.Redirect("
qmroute_show.asp?
q="
&
qmroute_name1&
endif
response.Write("
divid='
div_1'
所有与公交线路"
spanstyle='
color:
#FF0000'
qmroute_name&
/span>
有关的信息<
sqlstr="
select*from[Route]whereqmroute_namelike'
%"
qmroute_name&
%'
rs.opensqlstr,conn,1,3
ifnotrs.eofthen
%>
4.2.2公交站点查询
用户进入系统后,在站点查询模块中可以有二种选择:
第一,按站点的确切信息查询,即完全匹配查询。
此时用户要给出站点的全称,点击查询按钮后,系统会在数据库中检测该站点是否存在,如果存在,系统显示这个站点的相关信息。
如经过这个站点共有哪些线路,这些线路又各经过哪些站点。
第二,站点的模糊查询,即不完全匹配查询。
此时用户只需输入站点名称和部分字符信息,系统便会给出与此相关的所有站点信息。
公交站点查询界面如图4.4。
图4.4站点查询图
station_name=request.QueryString("
station_name1=request.Form("
station_name"
ifstation_name1="
then
请选择站点查询!
station_show.asp?
station_name1&
所有与公交站点"
station_name&
select*from[Station]whereqmstation_namelike'
station_name&
4.2.3公交换乘查询
用户进入系统后,在主页面的换乘查询模块中有两种选择,第一是直达,第二个是一次换乘。
用户可以在起点站输入框中输入自已的出发点,然后在终点站输入框输入出行的终点,如果选择直达,系统便会检测这两个站点间是否有直达车,如果没有直达车,系统会给出相关提示,那么用户便可以选择一次换乘,系统会检测是否有一次换乘方案,如果有系统会给出所换乘方案。
图4.5换乘查询图
station1=request.QueryString("
station2=request.QueryString("
q1"
station_1_new=request.Form("
station1"
station_2_new=request.Form("
station2"
ifstation_1_new="
orstation_2_new="
请选择站点进行查询!
response.Redirect("
bus_show.asp?
station_1_new&
q1="
station_2_new&
4.3住宿查询模块的实现
住宿查询模块为静态网站,为本系统的辅助功能。
界面如图4.6所示。
图4.6住宿查询图
4.4景点查询模块的实现
景点查询模块为本系统的辅助功能,界面如图4.7所示。
图4.7景点查询图
4.5特产查询模块的实现
特产查询模块为本系统的辅助功能,界面如图4.8所示。
图4.8特产查询图
4.6管理员模块的实现
输入管理员账号admin及密码admin即可对后台进行管理,如图4.9所示。
图4.9管理员模块图
ifsession("
qmadmin_user"
)="
response.Write("
script>
alert('
请先登录!
'
)<
/script>
Login.asp"
ip=Request.ServerVariables("
HTTP_X_FORWARDED_FOR"
)'
读取ip地址
ifip="
REMOTE_ADDR"
)
response.cookies("
buyok_user_ip"
)=ip
dimqmadmin_user,qmadmin_pass
qmadmin_user=HTMLEncode(trim(request.Form("
name"
)))
qmadmin_pass=HTMLEncode(trim(request.Form("
password"
ChkNum=HTMLEncode(trim(request.Form("
CheckNum"
ifCheckStringLength(qmadmin_user)>
20orqm