资源描述
民航售票管理系统的设计与实现摘 要本系统主要从现代社会电脑化观念出发,通过对现有民航公司资料的分析,研究和整理,确定了在民航公司引入民航售票管理系统的可行性、紧迫性和必要性。以实现民航公司售票管理的电子信息化,提高工作效率。民航售票管理系统分为民航管理系统和民航售票系统。其中民航管理系统又分为会员注册管理、管理员后台管理,留言管理以及各个功能子模块。民航售票系统分为航班查询管理,网上订票管理,网上退票管理以及各个功能子模块。主要为一个民航公司的售票管理提供了强有力的保证,大大提高了工作人员的工作效率,减少了成本的投入,降低了认为出错的机率。本系统的开发要求采用B/S结构,本系统采用ASP作为前台开发语言,SQL Server2000 作后台数据库。系统具有稳定性高、可移植性强等特点。通过对民航售票管理系统的开发,使我对民航售票管理系统有了更深入的了解,在开发的过程中对ASP,VBSCRIPT, JAVASRIPT语言更加熟悉,对开发工具Dreamweaver,Frontpage,后台的SQL SERVER2000的运用和配置更加熟练。关键词:ASP;管理;售票;数据Design and Realization of Commercial Aviation Management Booking SystemAbstractThis system mainly sets out from the modern society computerization idea, passing the analysis to the existing airline data, research and sorting, making sure to lead to sell a management system into the aviation in the airline of possibility, urgency and necessity. With the electronics which carries out an airline to sell a management information-based, exaltation work efficiency.The aviation selling a management system is divided into a aviation management system and aviation selling system. Among them, the aviation manages system and is divided into a member registration a management, managing person backstage management, message management and each function from mold piece. The aviation selling system is divided into a service search management, booking management on the net, refunding management and each function from the mold piece on the net. The probability mainly selling management system to provide powerful assurance for an airline, raising the staff members work efficiency consumedly, reducing the devotion of cost, lowering to think to come amiss.The development of this system adopts B/S structure. This system adopts ASP for developing, and the SQL Server2000 makes a backstage database. The system has characteristics of high stability, portability etc.Through the development of management system of aviation, I made more understanding about selling management system of aviation. In the process of developing, I acquainted myself more with ASP, VBScript, JavaScript, and I was proficient in DreamWeaver, FrontPage and the SQL SERVER2000.Key words: ASP; management; booking; database目 录 论文总页数:23页1. 引 言12. 总体设计12.1 系统需求及结构12.2 系统业务流程及模块介绍33. 方案选择43.1方案比较43.1.1系统模式比较43.1.2程序语言的比较53.2 系统运行环境及开发工具63.3 ASP简介74. 数据库的设计84.1 表结构的设计84.2 数据库的连接115. 各模块功能实现115.1 会员注册功能代码实现115.2 管理员管理功能实现115.3 航班查询功能实现155.4 网上订票功能实现165.5 网上退票功能实现186. 问题及测试结果19结 论19参考文献20致 谢21声 明221.引 言在现在的民航售票系统中,管理是民航公司能正常运作的重要环节,为了更好地推动民航售票业务的持续发展,不少民航分公司,通过分公司把民航售票管理软件推向最终用户。这些分公司大多分布在全国各地。在传统方式上,人们都是电话查询或者亲自到民航公司指定的售票地点去购买自己想要的航班机票,传统的方式使得人们在购买机票中花费过多的时间,人们的满意度很低,这样也给民航公司增加了大量的业务,而且纯手工的操作经营模式势必会带来很大的安全隐患,而且也不方便机票的管理。造成有些机票的积压,而有些机票却供不应求,这样就不能形成一个稳定有序的民航售票机制。因此一个良好稳定的民航售票管理系统的推出势在必行。民航售票管理系统,就是为了适应现代社会人们高度强烈的时间观念而开发出来的能够为用户提供可靠的信息存储,信息查询,信息操作的民航售票管理软件。它是基于Internet/Intranet网络环境下,采用B/S工作模式,集会员管理和售票查询预订处理统于一体的信息控制和管理,是建立在网络办公自动化和企业生产、经营管理基础上的统一网络信息管理平台。在此信息平台下,可灵活的处理民航公司的售票管理业务,实现管理控制的一体化,为公司创造了方便,快捷的工作环境。一个民航公司的民航售票管理系统是否完善,直接影响到工作人员的办事效率。以前传统的方式上的售票方式很不方便,而且花费在这上面的时间也是很多的。而且纯手工的操作也会给民航管理带来一定的安全隐患。随着民航运输业的不断发展,飞机和机场数量的不断增加,民航客运规模的日益宏大,传统的售票方式明显不能适应社会的发展,不能满足时代的需要。随着科学技术的日趋发展和电脑的普及,实现民航公司售票管理的信息化和高效化,除了有良好的硬件设备外,还需要一个很好的软件。这里所说的“软件”不仅仅是电脑程序,而且还包括适合电脑化操作的民航售票管理流程。本毕业设计就是根据民航公司自身的特点,为解决民航公司售票问题而设计的一套软件。使用计算机对民航公司售票进行综合管理,可以大大减轻工作量,减少人为的工作失误。基于公司的具体情况,本软件设计主要提供了航班的查询、网上订票、网上退票、会员信息管理及注册、民航咨询的相关信息、航班资料的添加、删除及修改等基本功能,是一个操作简单、使用方便的民航售票管理系统。2.总体设计2.1系统需求及结构民航管理系统主要功能模块结构示意图如下:图2-1模块结构图此毕业设计把民航售票管理系统划分为几个独立的模块。每一个模块通过超链接进行联系。它们都分别拥有自身完善的组成部分,比如说数据库、页面等。下面对它的各个组成部门做一个简要的介绍。1. 航班查询管理航班查询管理有两种不同的运作方式:单程与往返。这里的查询的基本的运作方式为不同旅途需要的客户提供了有益的参考和选择。系统根据不同的搜索条件响应相应的动作。另外客户还要输入对应的出发地点和目的地点以及出发时间等,因为这些才能构成一个航班查询的主要查询输入,对应得到的航班信息才会及时准确。输入的数据后,数据库将会反馈出:航班号、飞机型号、出发城市、目的城市、起飞时间和到达时间。2. 网上订票管理网上订票系统也可以分为两种不同的预订方式。一种订票的信息是根据航班查询得到的结果生成的网上订票的信息,这些信息是根据用户查询后得到的相应航班消息。另一种是系统默认生成的订票信息,这些信息是存在系统的数据库中的,人们可以通过浏览的方式来找到自己想要的航班的信息。3. 网上退票管理网上退票系统可以根据人们所定的信息进行相应的退票处理。只要是会员定了票交了一定的定金后,那么票的具体价格及信息等将会出现在此界面里。人们可以根据这些进行退票处理,但此退票管理系统将会收取一定的违约金。4. 会员注册管理会员注册管理模块是完成用户注册功能的。用户只有通过注册成为会员后,输入一定的消息才能成为会员,方便管理员的管理,也才能为合法的用户提供相应的保证。5. 管理员管理管理员管理模块相当于是一个后台的数据库管理系统。系统的管理员可以在这里面对航班的消息进行添加和删除,以及航班咨询的添加及删除,以及客户留言的管理等等。6. 民航咨询管理民航咨询管理模块为人们提供了一些民航的最新的新闻报道及咨询。人们可以通过这些消息得到自己想要的新闻,可以获得各个地方的民航咨询,不断丰富人们的民航知识。7. 留言管理留言管理模块为客户提供了一个交流的地方,人们可以在这里畅所欲言,也可以在这里发表自己的意见及看法,可以提出对民航管理方的建议。2.2系统业务流程及模块介绍民航售票管理系统业务流程设计思想如下:客户(这里主要指那些希望通过民航售票管理系统买票的一些用户)先登录到主界面进行注册,方能处理本系统后面设计的操作,如果是会员的话,那就可以省略此步骤。用户注册成为会员后就有一定的权限使用后面的系统功能。用户可以对系统里的感兴趣的民航咨询进行点击查询,这里只能读,不能修改。同时用户还可以在留言板里对自己的一些感受和想法向系统管理员留言。在航班查询模块中,会员可以通过这个界面查询相应的航班信息,系统外的动作就是人们先做好一个航班查询的准备,例如:航班的出发地点、航班的目的地点、单程还是往返、出发的时间等,一旦用户在这里添加信息动作后,系统通过后台的处理将会出现一个对应的操作,也就是相应的信息。航班查询分为两种查询的方式,一种是模糊查询,只需要输入一个对应的搜索条件,就可以得到所有满足此信息的航班。另外一种是输入全部的查询条件,得到准确的航班信息,其子模块的示意图如下:图2-2航班查询子模块图在航班订票模块中,会员可以根据已得到的航班信息,这里先有一个用户的决策的动作,例如:航班号、座位号、出发时间、出发地点、目的地点等,对相应的航班座位进行网上的预订。在网上退票模块中,会员以前预订好了的票,可以通过这个业务流程来退票,这里有个用户退票的起始动作,这个动作将会导致退票业务的形成。3方案选择3.1方案比较3.1.1系统模式比较目前系统开发的模式有两种,C/S结构和B/S结构。B/S模式,即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式,其本质是三层结构C/S模式。在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求。Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器。数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器。Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。C/S模式是一种两层结构的系统:第一层是在客户机系统上结合了表示与业务逻辑;第二层是通过网络结合了数据库服务器。C/S模式主要由客户应用程序、服务器管理程序和中间件三个部分组成。首先,交互性强是C/S固有的一个优点。在C/S中,客户端有一套完整应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。其次,C/S模式提供了更安全的存取模式。由于C/S配备的是点对点的结构模式,采用适用于局域网、安全性可以得到可靠的保证。而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCPIP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。由于C/S在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快,使得C/S更利于处理大量数据。由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。同时由于开发是针对性的,因此,操作界面漂亮,形式多样,可以充分满足客户自身的个性化要求。但缺少通用性,业务的变更,需要重新设计和开发,增加了维护和管理的难度,进一步的业务拓展困难较多。不过此部分内容对于管理制度成熟的民航公司而言,其困难度并不大。B/S模式管理信息系统基本上克服了C/S 模式管理信息系统的不足,其主要表现在:系统开发、维护和升级的经济性。B/S模式提供了一致的用户界面。B/S模式具有很强的开放性。B/S模式的结构易于扩展。B/S模式具有更强的信息系统集成性。3.1.2程序语言的比较ASP全名Active Server Pages,是一个Web服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的Web服务应用程序。ASP采用脚本语言VBScript(Java script)作为自己的开发语言。 JSP是Sun公司推出的新一代网站开发语言,Java Server Page。JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。 两者都提供在 HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。但JSP代码被编译成 Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。在ASP 、JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML页面只依赖于Web服务器,而ASP 、JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP 、JSP两者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。ASP的主要优点大概可以归纳如下:1、您可以用 VBScript 或JavaScript创建脚本,同时结合HTML语言就能够非常方便地完成网站的应用程序。对于 VBScript和JavaScript,使用哪种语言并不重要,Web 服务器等同地处理这两种语言,并向用户的浏览器发送 HTML 格式化结果。2、因为ASP采用Script语言(VBScript和JavaScript)就可以轻松编写程序,因此这就大节省了网络设计人员又得重新学习一种新语言的时间。而且编写ASP无须手工compile编译或链接程序,可在服务器端直接执行,这无疑是更加方便了我们的编写过程。3、使用普通的使用记事本之类的文本编辑器,即可进行编辑设计,如:Windows的记事本。建议不要用FontPage98或DreamWeaver2.0等主页制作软件修改,因为他们会破坏源代码的。4、ASP是运行在服务器端,所以我们无须担心浏览器是否支持ASP所使用的编程语言,用户只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。ASP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。 5、ASP能与任何ActiveX scripting语言相容。除了可用VBScript或JavaScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl等。脚本引擎是处理脚本程序的COM(Component Object Model)组件。6、Active Server Pages的程序代码隐藏,在客户端上仅可以看到由ASP输出的动态HTML文件。因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。 3.2系统运行环境及开发工具首先选择操作系统。由于ASP属于MS(Microsoft)的东西,所以我们要选择MS的操作系统。本设计采用的是Windows XP。在搭建个人WEB服务器时,需要根据操作系统来进行选择。本设计的配置是这样的:Windows + IIS。IIS是Internet Information Server的缩写,它是微软公司主推的服务器,IIS支持HTTP(Hypertext Transfer Protocol,超文本传输协议),FTP(File Transfer Protocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展。IIS的一个重要特性是支持ASP。IIS 3.0版本以后引入了ASP,可以很容易的张贴动态内容和开发基于Web的应用程序。对于诸如VBScript、Jscript开发软件,或者由Visual Basic、Java、Visual C+开发系统,以及现有的CGI和Win CGI脚本开发的应用程序,IIS都提供强大的本地支持。其三是关于SQL Server 2000数据库的搭建问题。按照安装的提示把数据库安装完成,在选择身份验证时选择混合验证,要和connect.asp中的密码和ID号对应,这个步骤很重要。这样SQL Server 2000数据库搭建完成,在开始菜单打开数据库的服务器,并在SQL 服务管理器里输入本机的计算机名字,然后在打开控制台目录,进可以相应数据库的建立,以及表的设计。Microsoft SQL(Structure Query Language)Server 2000它是一个分布式的关系型数据库管理系统,具有客户机、服务器体系结构,采用一种TRANSACT-SQL 的SQL 语言,在客户机和服务器之间传递客户机的请求和服务器的处理结果。用户可以使用SQL 语言在数据库中执行数据库的建立、查询、更新以及各种数据控制。数据库系统选择是狭义软件开发的第一步,选择数据库应用中存放数据的数据库系统此时需要考虑以下因素:i 应用的并发处理要求。如果需要并发处理能力,我们需要选择大型的数据库服务器作为数据存放的仓库。在一般的桌面应用中,使用单用户的数据库系统就足够了。 应用的事务处理量。应该考虑每天、每小时、甚至每分钟的事务处理数量,在业务量大的情况下,应该选择稳定性比较强的数据库系统作为数据库存放仓库。 应用的数据安全性。数据是否需要高度的安全保证,数据是否涉及商业的经济命脉?一般只有大型的数据库服务器才具有数据库安全保证,比如在银行的数据库应用中,安全性是最重要的因素。经过上面的三个步骤,一个完整的ASP网站的运行环境就搭建起来了。系统开发运用到了Macromedia DreamWeaver MX 2004,PS等制图工具等应用软件。本设计开发是基于B/S模式的,数据库在服务器端运行。3.3 ASP简介ASP的含义从字面上说,ASP包含三方面含义: 1、Active:ASP使用了Microsoft的ActiveX技术。ActiveX(COM)技术是现在Microsoft软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。 2、Server:ASP运行在服务器端。这样就不必担心浏览器是否支持ASP所使用的编程语言。ASP的编程语言可以是VBSCRIPT和JSCRIPT。VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。然而Netscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。而在服务器端,则无需考虑浏览器的支持问题。Netscape浏览器也可以正常显示ASP页面。 3、Pages:ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。这样就可以防止别人抄袭程序。 由此我们可以看出,ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。 ASP是基于WEB的一种编程技术,可以说是CGI的一种。它可以完成以往CGI程序的所有功能,如计数器、留言簿、公告板、聊天室等等。 ASP可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。 使用各种各样的组件,ASP可以完成无比强大的功能。 使用FileSystemObject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等等。 有ADO(Active Database Object,动态数据库对象)的支持,ASP对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。 使用CDONTS(Collaboration Data Objects for NTS,NTS协作数据对象),可以发送、查看邮件,实现WEBMAIL的功能。 结合WSH(Windows Scripting Host),可以实现对NT主机的管理,如NT用户管理、IIS虚拟主机设置、EXCHANGE邮箱设置等等,就像管理本地机一样方便。 ASP可以实现以往CGI的所有功能。如果你对Perl、C等其他CGI语言不熟悉,可以考虑使用ASP。因为ASP使用的VBScript比较容易上手。但是,如果你的CGI程序还需要在Unix主机上运行,最好使用Perl。Perl在Unix和NT上同时被支持。你只需要简单的修改,就可以移植。 ASP操作数据库的功能非常强大。如果你使用基于NT的Intranet建立你的MIS应用,非常推荐你使用ASP技术。ASP编写出的系统,完全可以达到原来使用Client/Server的网络数据库系统的水平。使用ASP最大的好处是:在你对程序进行升级时,你只需要修改服务器上的ASP文件,而不需要修改客户端程序。4.数据库的设计4.1 表结构的设计根据需求设计出7个数据表:管理员信息表admin-info、航班信息表Flight-info、价格信息表price-info、用户信息表user-info、新闻信息表jjh-news、留言信息表guest和乘客信息表Book-info。主要数据库表设计结构:1 管理员信息表:记录管理员的详细信息。表4-1管理员管理员表主要是记录管理员的帐号、密码信息。如表4-1就是该表的主要设计。adzh为管理员帐号,mima就是管理员的登录密码。2 航班信息表:记录航班的详细信息。表4-2航班信息航班信息表,记录了航班号flightid、航班类型flighttype、出发地点startity、目的地点endcity、起飞时间takeofftme和到达时间landtime等信息。3 访客信息表:记录访客的资料信息及留言信息。表4-3访客信息访客信息表记录了访客的名字、来源、邮件、主页、表情、性别、OICQ、ICQ和IP等消息,ID为自动编号。4 乘客订票信息表:记录订票乘客详细信息。表4-4乘客信息表乘客信息表记录了订票的信息,包括序列号bid、用户名username、航班号flightid、座位号seatid和订票时间booktime,系统将订票后的信息和退票的信息将存放此表。5 民航信息咨询表:记录民航的资料信息。表4-5民航信息咨询民航信息咨询表记录了新闻标题news_title、作者news_author、是否删除news_tui、新闻来源news_come、新闻内容news_connent、新闻录入时间news_time。news_id为自动编号,以后的操作的顺序按这个排序。6 民航机票信息表:记录航班票据的相关信息。表4-6民航机票信息民航机票信息表记录了座位号seatid、机舱等级dengji、航班号flightid、价格price、是否出售flag,其中PID为序号。其中flag为一个标志信息记录航班是否出售。7 会员注册信息表:记录会员的注册信息。表4-7会员注册信息会员注册信息表记录了会员的姓名、密码、名字、性别、电子邮件、电话、地址和身份证号。4.2数据库的连接Microsoft SQL Server 是一种数据库管理系统,可以用来方便、高效地管理大量的用户数据。一般情况下,SQL Server数据库有两种连接数据库的方式。一种是采用用户名和密码连接数据库;另一种是采用系统集成验证连接数据库,此时不再需要验证用户的名称和密码,直接采用操作系统登录用户的信任连接。我采用的是第一种连接方式,其基本属性有:Driver、Server、UID、PWD和Database。数据库连接的代码如下:5.各模块功能实现5.1会员注册功能代码实现当用户第一次来访问一个民航售票管理系统的网站时,他没有一个合法的身份验证,也没有一个对应的ID号来确认他的身份。客户想获取一个合法的ID号的话,他就必须先注册为一个合法的用户才能访问网站。注册成功后,也就获得了相应的权限。这样就为用户提供了一个安全进入系统的保证。系统根据用户的角色及业务需求分配相应的模块操作权限。所授予的模块和数据库操作权限通过菜单框架结构和页面组合,形成用户业务操作平台及操作界面。5.2管理员管理功能实现这个模块分为三个小的模块:用户管理模块、民航咨询模块和航班管理模块。机票管理模块是管理员管理整个网站的核心,对用户的资料的存储,保密,修改起到了至关重要的作用。这个模块方便了用户资料的统一管理、统一存储,方便管理员对一些异常用户的处理,为整个网站的安全性提高了很大的保证。任何会员注册成功后的基本信息及一些保密信息将会存储在这里,管理起来很统一,操作方便。这里还可以删除那些过期的用户,添加特殊用户。这些功能正是现在民航管理系统所必须的。有了上述的这些安全保证,民航管理系统将会在人为破坏系统上大大提高效率。航班管理模块的出现,方便了管理员对本系统航班座位以及销售信息的管理。管理员可以在这里对航班信息进行添加,可以更改航班的时间、出发地点、目的地点、降落时间、单程还是往返、座位号ID、航班号ID等等。航班的准确及时的添加和修改,为的就是能更好的方便用户对航班信息的查询,方便用户尽快找到自己理想的航班。在这个模块中,管理员还可以对航班的预订情况做个标记和说明,并对他们赋予一定的初始值(出售与未出售),这样在前台反应出来的才会是真实的值。图5-1 会员管理图5-2 航班管理图5-3 机票管理1会员管理核心代码:if request.QueryString(username) then cmd1=DELETE FROM User_Info WHERE username=&request.QueryString(username)& set rs1=server.CreateObject(ADODB.RecordSet) rs1.Cursortype=adOpenStatic rs1.open cmd1,conn response.writealert(您已经删除该用户!);window.close();2航班管理核心代码:if not rs.eof thenrs.Movefirstrs.pagesize=adperpageif trim(request(page) then currentpage=clng(request(page)if currentpagers.pagecount then currentpage=rs.pagecountend ifelse currentpage=1end if totaldiary=rs.recordcountif currentpage1 then if(currentpage-1)*adperpagetotaldiary then rs.move(currentpage-1)*adperpage dim bookmark bookmark=rs.bookmark end ifend ifif (totaldiary mod adperpage)=0 then totalpages=totaldiaryadperpageelse totalpages=totaldiaryadperpage+1end ifi=0do while not rs.eof and i3机票管理核心代码:if not rs.eof thenrs.Movefirstrs.pagesize=adperpageif trim(request(page) then currentpage=clng(request(page)if currentpagers.pagecount then currentpage=rs.pagecountend ifelse currentpage=1end if totaldiary=rs.recordcountif currentpage1 then if(currentpage-1)*adperpagetotaldiary then rs.move(currentpage-1)*adperpage dim bookmark bookmark=rs.bookmark end ifend ifif (totaldiary mod adperpage)=0 then totalpages=totaldiaryadperpageelse totalpages=totaldiaryadperpage+1end ifi=1do while not rs.eof and i民航咨询模块的出现,为人们提供了快速浏览航班信息咨询的动力。管理员可以通过这个模块对最新的民航咨询进行添加和修改,目的是为用户提供及时,准确,可靠的民航咨询,不断满足人们在这方面信息的需求。同时管理员还可以对系统里过期的咨询和一些浏览程度不高的咨询消息进行删除。这样就大大提高了民航咨询的及时共享性。方便了用户的民航信息需求。下面是民航咨询的一个截图展示:图5-4 民航咨询5.3航班查询功能实现这个模块为用户提供了查询航班的窗口界面,用户可以根据这个界面的要求和提示,输入相应的航班的资料。系统通过前台数据的传递,然后发送到数据库里。根据用户输入的数据,系统可以做个判断,判定用户的航班是否能在数据库里找到对应的。如果找到,系统将会返回一个对应的航班信息;如果不能找到,就返回一个暂无信息的界面。这里的实现是通过查询SQL里flight-info表来实现的,具体的截图如下:图 5-5航班查询航班查询关键代码:sql=select * from Flight_Info where flighttype like%&flighttype&% and startcity like%&startcity&% and endcity like%&endcity&% and takeofftime like%&takeofftime&% and landtime like%&landtime&% rs.open sql,conn if not rs.eof or not rs.bof then i=1 while not rs.eof i=i+15.4网上订票功能实现这个模块为用户提供了根据自己需要的航班进行的网上订票的功能,界面友好。当用户查询需要的航班后会自动切换到网上订票的界面,这里为用户提供了一个航班信息的窗口,里面的设置有:航班号、航班类型、出发城市、目的城市、起飞时间,到达时间。点击航班后,可以查询该航班是否已经出售,同时还可以查看机票的价格,舱位等级等等。这样方便了用户的订票的可操作性,为用户能找到自己理想的机票提供了有利的保证。具体的截图如下:图5-5 航班信息图5-6网上订票网上订票的核心代码:% if request.QueryString(flag)ok thenflightid=request.QueryString(id)seatid=request.QueryString(id1)sql=SELECT * FROM Flight_Info INNER JOIN Price_Info ON Flight_Info.flightid = Price_Info.flightid WHERE Flight_Info.flightid =&flightid&AND (Price_Info.seatid =&seatid&) rs.open sql,conn if not rs.eof or not rs.bof then i=1 while not rs.eof i=i+1 % flightid = request.Form(flightid)seatid=request.Form(seatid) cmd1=UPDATE Price_Info SET flag = 1 WHERE (flightid = &flightid&) AND (seatid = &seatid&) set rs1=server.CreateObject(ADODB.RecordSet) rs1.Cursortype=adOpenStatic rs1.open cmd1,conn 5.5网上退票功能实现这个模块为用户提供了航班的退订。系统为用户考虑到了一个操作简单,简便的操作界面,根据系统的提示。用户可以找到自己想要退掉的机票,用户可以根据这些关键字来找到退票的依据:航班号,座位号,舱位等级,机票价格和预订的时间作为参考。方便用户查找到机票并办理相应的退票,用户点击退票后,数据库会自动删除预订票的相关信息。这里设置了一个FLAG作为退票和订票的参数设置。当FLAG为1时,代表此票已经出售,为0时间代表此票未出售。网上退票的截图如下:图5-7网上退票网上订票的核心代码:if request.QueryString(flag)=ok then flightid = request.Form(flightid)seatid=request.Form(seatid)bid = request.Form(bid) cmd1=UPDATE Price_Info SET flag = 0 WHERE flightid = &flightid& AND (seatid = &seatid&) set rs1=server.CreateObject(ADODB.RecordSet) rs1.Cursortype=adOpenStatic rs1.open cmd1,conn cmd2=Delete from Book_Info WHERE bid =&bid& set rs2=server.CreateObject(ADODB.RecordSet) rs2.Cursortype=adOpenStatic rs2.open cmd2,conn response.writealert(您已经取消了预订!);window.close(); response.redirect(tuiding.asp)6.问题及测试结果本系统在设计和开发过程中,也遇到了不少的问题,就其中较特殊问题分析及解决方案描述如下:查询航班的时候连接到数据库的时候出现了乱码,找不到对应的页面,显示出航班信息为无,解决的办法:把数据库服务器的名字改为本机的名字,然后找到相应的接口。测试的结果还是能基本运行,界面较稳定,网站的运行较稳定,但还是存在很多的问题,比如界面有时候要出现乱码,不能很好的支持网站的运行,数据库的建立的时候还存在很多安全隐患。结 论经过紧张而有序的毕业设计,民航售票管理系统主体功能已全面实现。系统界面简洁、操作方便、功能齐全,实现了查询航班、网上订票、网上退票、民航咨询、民航咨询、留言版等功能,基本实现了民航售票的信息化和自动化以及智能化。但是也有需要进一步改进的地方,如:航班查询的搜索条件也应该更加多一点,网上订票的时候能显示出同一航班不同座位的价格,网上订票的时候能进行第三方的汇款的电子支付,网上退票的时候能根据座位的价格收一定的定金,使得界面更加稳定,更易操作,更能适应各种网站的运行环境,安全性和可操作性更高。通过对本系统的需求分析,概要设计、详细设计、编码、测试等每一部分的学习和实践。使我体会到系统的设计阶段有举足轻重的地位,设计的阶段的质量优劣,直接影响到以后系统质量。需求是否准确,影响到最后系统是否能达到用户的要求,概要设计的数据结构的设计,影响数据库的设计是否优越,如果设计合理,在编码阶段实现就相对容易了。详细设计中的相关类的设计和函数的定义,对编码阶段铺垫,使编码水到渠成。本系统的实现过程中,本人对ASP、Dreamweaver、数据库、Visio设计工具等都更深层次的认识和理解。本人相信这对以后工作将会大有益处的。综上所述,毕业设计阶段让我充分的应用四年在校所学的知识,让理论和实践完美的结合起来。参考文献1 方睿.网络数据库原理及应用M.成都:四川大学出版社,2005。 2 魏应彬.网页设计于WEB数据库发布技术M.北京:清华大学出版社,2002。3 石志国.ASP动态网站编程M.北京:清华大学出版社,2001。4 叶子青.ASP网络开发入门与实践M.北京:人民邮电出版社,2006。5 李晓黎,张巍.ASP+SQL Server网络应用系统开发与实例M.北京:人民邮电出版社,2004。6 盖天宇.ASP数据库系统开发案例精选M.北京:人民邮电出版社,2006。7 张胜.Dreamweaver 8+ASP动态网站建设基础与实践教程M.北京:电子工业出版社,2007。致 谢本文是在罗代升老师的热情关心和指导下完成的,他渊博的知识和严谨的治学作风使我受益匪浅,对顺利完成本课题起到了极大的作用。在此向他表示我最衷心的感谢!在论文完成过程中,本人还得到了王翔老师和全班同学的热心帮助,本人向他们表示深深的谢意!最后向在百忙之中评审本文的各位专家、老师表示衷心的感谢!第 22 页 共 23页声 明
展开阅读全文