【《基于web的旅游网站设计》7700字】_第1页
【《基于web的旅游网站设计》7700字】_第2页
【《基于web的旅游网站设计》7700字】_第3页
【《基于web的旅游网站设计》7700字】_第4页
【《基于web的旅游网站设计》7700字】_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2基于web的旅游网站设计目录TOC\o"1-3"\h\u56101引言 3224051.1研究目的与意义 3115681.2行业现状 3176411.3论文组织结构 4151012相关技术简介 5191262.1PHP5.6 522062.2phpstudy 5324732.3MVC 5263012.4MYSQL 552.5phpstorm 6284862.6浏览器兼容性研究 698343旅游网站需求分析 640203.1功能需求 639393.2非功能性需求 7262703.3可行性分析 78394旅游网站总体设计 858074.1网站前台功能模块设计 8284114.2网站后台功能模块设计 86344.3数据库设计 9140854.3.1实体关系分析 9163224.3.2数据库表设计 961775基于web的旅游网站的实现 13179675.1网站前台模块实现 13106755.1.1网站推荐模块 13155005.1.2网站新闻列表 15308535.1.3景点信息展示模块 1684415.1.4酒店预约模块 1693945.2网站后台模块实现 17111965.2.1管理员登录模块 179415.2.2系统用户管理模块 1924585.2.3景点信息管理模块 2040395.2.4酒店预约模块 21127565.2.5系统管理模块 21308826旅游网站测试 22320686.1测试环境 2211346.2功能用例 223886结论 25摘要旅游业作为与人们生活最息息相关的行业备受重视外出旅游作为调剂生活的一种方式受到越来越多的人欢迎,景区为了更好的服务游客推出了各类的旅游宣传网站,在进行景区推广的同时为游客制定游玩方案。在此基础上设计了基于web的旅游网站,让用户能够通过网站制定出行完整攻略。本文主要介绍了旅游网站的背景信息,对系统开发意义进行阐述。网站实际使用中需要满足的用户需求进行分析,利用了PHP+MySQL数据库的技术开发了一个旅游网站系统,本系统主要设计了景点推荐、门票管理、公告发布、酒店预定等功能,而后台的管理员则通过登录管理员账号,可以对系统的用户基本信息、景点信息和酒店预约模块进行增加删除等操作。页面开发采用bootstrap框架,通过PHP语言进行动态页面实现使用MVC模式实现数据处理与页面设计的分离,最终实现了旅游网站的相应功能。关键词:旅游网站;bootstrap框架;MVC模式1引言1.1研究目的与意义互联网与行业的融合是未来的发展趋势,随着旅游市场的发展前景不断变好行业价值也有所提升,从事旅游行业相关产业的从业人员越来越多旅游体验也有所升级。。各类旅游网站的搭建也紧随其后,旅游者们已经习惯从网络上获取景点的游玩旅游以及周边美食攻略。网站的设计与编程能力也正不断升级,为了实现更加丰富的功能在系统开发时项目的规模在慢慢变大。在大量的旅游网站面世的同时也存在一些问题,各个平台水平不一致有些旅游网站只是简单的景点介绍,无法给游玩者提供真实的意见。针对这种问题在进行本网站设计过程中对网站的主题进行了定义,将网站的服务范围框在了某一具体的旅游景点当中,围绕该景点的门票售卖、吃饭住宿进行相关功能模块的设计让所有又关景点的公告信息都能够及时发布。1.2行业现状旅游业的发展给景区的管理工作带来了巨大压力,相关部门要求景区加强信息化建设。国内旅游网站的总数是非常大的,网站总体功能也已经囊括了景区出行的购票、攻略等方面。比较大型的携程旅游网等占领了巨大的市场份额,凭借景点全覆盖的能力成为人们出行的首选。但是对于游客来说,大型网站覆盖范围过广无法对每一个景点做到全面展示。很多旅游网站中的功能使用体验都不够好,用户互动分享之类的功能还不够完善。不能够将景点附近的住宿与餐饮结合起来推荐,对周围的经济进行带动。而小型的针对某一景点的网站能够将该景点的特色更好的展示,能够提供更加详细的出行方案对出行环节进行完善。对小型的网站当中的酒店类周边服务能够更好的上架各种服务进行推广,带动周围经济的发展。1.3论文组织结构本网站建设主要围绕杭州这座城市的景点作为试点推荐展开,在后续的建设中,可以存放多个城市以作为完善,从用户需求入手建设一个能够集景点游玩-住宿-出行路线制定-美食推荐功能为一体的多功能平台。文章一共有六个章节各个章节内容如下:第一章引言部分,简要介绍了旅游网站开发目的以及实现之后能够使用在哪些场景中,能够为景点管理带来哪些便利。其次是对旅游行业现状进行简单分析,完善对背景的分析,讨论网站开发价值。第二章相关技术研究部分将网站编写过程中使用到的服务环境与框架技术做了列举。第三章需求分析部分与网站开发是息息相关的,设计完成网站中所包含的功能分析后通过文档的方式记录下来,就组成了论文中的系统架构章节写作。第四章是系统设计部分,在网站开发之前需要先将功能模块进行定义,将每个模块使用到的数据信息进行建表,这样在开发过程中条理就会更加清晰。最后两张记录了系统模块的编程过程,对模块开发中使用的方法进行介绍,最后记录网站测试过程分析网站性能。2相关技术简介2.1PHP5.6PHP编程语言的运算速度很快,在实现复杂系统开发过程中也能够保证工作效率。在不同的操作系统中都可以运行,代码的移植能力也很强及时用户调整了使用平台也可以直接调取代码使用。具体功能包含了多个类似文件上传、cookies操作等实用的功能,开发过程中的数据库选择范围也很广泛,能够与MySQL、access等数据库进行连接。2.2phpstudy作为PHP免费开发工具中的一个,虽然phpstudy的界面还很粗糙但是因为功能的全面以及使用过程不需要进行太多的调试,工作稳定性好,所以它还是受到开发者的欢迎。2.3MVCMVC模式是将系统界面与功能之间进行分离的方式,分别实现对系统中数据的处理、数据的可视化表达与逻辑处理功能。控制层会处理模型与用户之间的处理操作,代码的复用性强,对于类似的功能可以通过调用的方式直接使用。2.4MYSQL为了方便对数据的管理,会通过罗列多张数据表的方式对系统中的数据信息进行存储。MySQL能够实现基于存储的数据的查找操作,通过查询语言的定义实现多种格式的数据查找操作。2.5phpstormPhpstorm能够在开发过程中灵活的进行编码补充,进行开发提示的同时还能够生成简单的注释方便对系统进行复查时参照修改。随着版本的不断升级,原有了问题很多都得到了修复,对网页开发的支持也更好。2.6浏览器兼容性研究网站开发是提供给大量的用户群体使用的,市面上有很多浏览器用户会按照自己的习惯使用。但是浏览器之间因为内核和页面渲染方式的不同页面的显示效果也会有所区别,样式标签的支持程度有所不同,这给开发者带来了一定的困扰。在见web页面开发的过程中需要能够使得网站对主流浏览器实现兼容。通过对网页文档类型进行定义的方式能够让不同的浏览器都能够正常识别文档信息。旅游网站会使用到大量的图片进行宣传推广,但是不同浏览器对于图片的读取速度是有区别的,为了更快的响应图片展示功能可以尽可能多的使用CSS进行图片绘制,保证响应速度的同时图片清晰度也会更稳定。3旅游网站需求分析3.1功能需求基于web的旅游网站是面向小范围的景点介绍需求所开发的,网站主题是对杭州这个城市中的所有景点与旅游路线进行推荐,推动城市旅游以及周边行业的发展。旅游是一个放松的过程,无论是远途游玩还是就近游玩都会在景点附件产生购物、住宿类的消费。网站针对游客需求设计不同的景点板块与住宿板块,为游客提供方便。一方面旅游网站能够让官方信息能够有独立的传播平台,及时的通知景点经营时间变化情况,帮助游客提前进行景点门票预约,在出游的过程中起到向导的作用。本系统实现了前台用户注册、线路景点、预订购买和反馈与留言的功能,在后台,管理员可以查看和修改前台用户的基本信息,增加和查询景点的功能,对票务信息、酒店信息也可以进行添加和查询的操作,对前台用户留言管理等功能模块。同时为了发展旅游附属行业也在网站中设计了酒店预定等模块,通过活动推广等方式吸引游客在酒店入住,让游客感受到便利的同时也为酒店带来收益。3.2非功能性需求作为旅游推广网站,页面样式的浏览效果与上线的景点的宣传图片能够从视觉上吸引游客。网站首先需要能够对主流浏览器的兼容性问题进行处理,确保页面展示效果与开发效果一致。在不断推广过程中网站的用户数量会有一定程度的增长,访问人数增所会对网站响应速度造成影响,为了让网站的生命周期更长需要在开发阶段就考虑到后期大量的数据访问请求,提升整体性能。在使用票务购买酒店预定等消费功能时可以通过弹框的方式对用户的输入进行相应,提升用户交互感受。3.3可行性分析在项目开发之前需要按照软件工程流程对将要开发的系统进行可行性分析,通过分析结果判断系统开发是否可行。通过在可行性分析能够避免系统难度过大无法完整的实现索性徐功能的开发,以及项目实施需要过大的投入无法负担等情况的发生。并且需要注意法律上的可行性,如果因为意外使用了一些他人的东西导致侵权让系统无法上线会造成重大的损失。系统开发完成不能代表就已经具备足够的竞争力,系统运行的性能会给使用者带来非常直观的感受,好的产品体验能够让系统更受欢迎。首先需要保证操作系统的过程中是流畅的、简单的,在保证功能能够正常使用的同时需要以用户体验为重点。通过学习比较知名的旅游的功能设计与界面设计方法能够让网站在设计的过程中更加专业。同时在设计旅游网站的过程中开发功能的同时设计操作简洁网页页面,能够提升系统可用性。4旅游网站总体设计4.1网站前台功能模块设计外出旅游会涉及到景点、酒店、就餐等多个方面,旅游网站的功能模块也会比较丰富。在对前台功能进行设计时将重点放在了景点的推荐、路线规划、酒店预定三个方面。在网站首页会通过图片的方式对城市中比较有名的景点或者是比较好的旅游路线进行推荐,用户在网站完成注册后能够对城市景点进行预约对酒店进行预约。具体的功能结构图如4.1所示。图4.1旅游网站前台功能结构图4.2网站后台功能模块设计在网站后台能够对旅游网站中的各类文章信息进行创建与修改,对不同的用户模块、票务模块在设计页面的时候采用了二级菜单的方式让同一模块的功能不会因为菜单条数过多而变的凌乱。对于系统的基本信息也可以通过后台进行管理,让系统能够灵活的进行页面的简单调整。具体的功能结构图如4.2所示。图4.2旅游网站后台功能结构图4.3数据库设计4.3.1实体关系分析旅游网站当中的实体包括景点、门票、用户、酒店、公告等,他们之间是有对应关系的。其中景点与门票之间是一对多的关系,门票是景点的一部分。而用户与门票、酒店之间都会同样是一对多的关系,一个用户可以购买多个门票也可以预约多个房间,同时在进行门票预约与酒店预约信息记录的过程中需要将用户名称作为外键记录,便于不同对预约信息进行管理。4.3.2数据库表设计1、通过记录用户信息能够方便管理,例如在特殊时期对部分地区游客的来访见控制,具体属性如表4-1所示。表4-1用户表用户数据表列名数据类型长度主外键是否可为空备注User_Serialint10主键否序号User_accountVarchr30外键否账号User_passwordVarchr30否否密码User_nameVarchr255否否姓名User_GenderVarchr20否否性别User_regionVarchr255否否地区User_mailboxVarchr255否否邮箱User_PhotoVarchr255否是照片User_AuditVarchr10否否审核状态User_AddVarchr255否否添加时间2、景点通过编号进行区分,使用网站展示景点的过程会将系统的地址通过百度地图进行展示,具体属性如表4-2所示。表4-2景点信息数据表景点信息数据表列名数据类型长度主外键是否可为空备注Scenic_Serialint10主键否序号Scenic_accountint10主键否景点编号Scenic_nameVarchr255否否景点名称Scenic_addressVarchr255否否景点地址Scenic_pictureVarchr255否否图片Scenic_openingDatetime255否否开放时间Scenic_AuditVarchr255否否审核状态Scenic_commentVarchr255否否评论管理Scenic_AddDatetime255否否添加时间3、票务信息是由景点信息与下单用户信息共同组成的,如果当日售出的门票数量到达限制可以拒绝审核通过,属性如表4-3所示。表4-3景点票务信息数据表景点票务信息表列名数据类型长度主外键是否可为空备注Ticketing_Serialint10主键否序号Ticketing_accountint10主键否票务编号Ticketing_nameVarchr255外键否景点名称Ticketing_openingDatetime30否否开放时间Ticketing_Priceint10否否价格Ticketing_quantityint10否否购买数量Ticketing_moneyint10否否实付金额Ticketing_timeDatetime30否否购买时间Ticketing_userVarchr255否否下单用户Ticketing_statusVarchr255否否支付状态Ticketing_AuditVarchr255否否审核状态Ticketing_AddDatetime30否否添加时间4、酒店预约需要预付费用,使用该功能需要先进行用户注册这样产生的酒店订房信息就能够与用户进行绑定。表4-4酒店预约信息数据表酒店预约数据表列名数据类型长度主外键是否可为空备注Hotel_Serialint10主键否序号Hotel_accountint10主键否酒店编号Hotel_nameVarchr255否否酒店名称Hotel_RoomVarchr255否否客房类型Hotel_addressVarchr255否否酒店地址Hotel_Priceint10否否价格Hotel_quantityint10否否预定数量Hotel_moneyint10否否金额Hotel_userVarchr255外键否下单用户Hotel_statusBoolean255否否支付状态Hotel_AuditVarchr10否否审核状态Hotel_AddDatetime30否否添加时间5基于web的旅游网站的实现5.1网站前台模块实现5.1.1网站推荐模块除了视频之外最能够吸引人目光的就是图片,高质量的景点图片能够对游客产生足够的吸引力,勾起他们想来一探究竟的欲望。因此在网站的首页会使用比较重要的头部板块来进行景点图片的轮播宣传进行推广。从页面截图中可以看到当前登录的用户的名称与权限,在登录状态下的预约操作会将信息存储到对应的用户数据表下进行管理。网站涵盖的所有功能入口都被放置在头部,如图5.1所示。图5.1旅游网站前台首页重点代码如下:publicfunctionTourism(){$id=I('get.pageid');$where['pageid']=$pageid;$scid=M('goods_list')->field('infid')->where($where)->find();$recomment_where['infid']=$scid['infid'];$Tourism_where['tourism']=1;$count=GetTourismCount($tourism_where);if($count>=6){$this->error('尝试','../Index/Index');}$result=M('tourism_list')->where($where)->setField('tourism',1);if($result){$this->success('修改成功','../Tourism/tourismList');}}5.1.2网站新闻列表网站内的新闻板块不仅可以用来发表景点相关的新闻,还可以将游客在杭州旅游所做的攻略与感受进行收集展示在网站当中,拉近游客之间的距离。网站通过访问统计的方法将所有文章的阅读次数进行记录,在首页推荐时会选择浏览量比较高的文章推荐,在新闻列表也会将次数进行展示,如图5.2所示。图5.2网站新闻展示列表重点代码如下:if(!function_exists('AddViewsColumn')){functionAddViewsColumn($cols){$cols['views']=__('阅读');return$cols;}functionGetViewsValue($column_name,$post_id){$views=(int)get_post_meta($post_id,'views',true);echo$views;}//forpostsadd_filter('manage_posts_columns','AddViewsColumn');add_action('manage_posts_custom_column','GetViewsValue',10,2);//forpagesadd_filter('manage_pages_columns','AddViewsColumn');add_action('manage_pages_custom_column','GetViewsValue',10,2);}5.1.3景点信息展示模块对于杭州的所有景点通过标号的方式进行管理,游客想要搜索景点信息则可以通过名称匹配的方式进行查询。在列表展示的时候只显示了名称、图片与地址,游客可以通过详情页面查看到景点的具体信息,如图5.3所示。图5.3景点列表页面5.1.4酒店预约模块酒店预约需要先进行用户注册,如果当前没有登录用户账户在进入这个模块时会自动跳转到用户注册页面。在进行页面开发的过程中对于备注信息这一栏目的文本框样式进行了调整,通过拉拽可以调整文本框的大小方便用户输入,如图5.4所示。图5.4酒店预约管理页面重点代码如下:/***酒店预约的操作方法*自定义的一个函数用于数据添加后做的相应处理操作,使用时调用*@paramint$rid*/publicfunctionReserve$ridArrs=array()){if(is_string($ridArrs)){$ridArrs=explode(',',$ridArrs);}//同时添加属性内容Db::name('reservecontent_attr')->where(['rid'=>['IN',$ridArrs]])->add();}}5.2网站后台模块实现5.2.1管理员登录模块在进行网站登录的过程中使用游客与管理者使用的登录界面都是同一个,区分是对于权限的选择。如果是用户权限登录后依旧进入到网站前台,如果是管理员权限就会进入网站后台。如图5.5所示。图5.5旅游网站登录页面重点代码如下://用户登录方法publicfunctionlogin($uid){/*判断当前用户是否为注册过的用户*/$info=(newCustomer())->getCustomer(['id'=>$cid]);$customer=['cid'=>$cid,'nickname'=>$info->customername,//状态'status'=>1,];}$customer=$customer->toArray();if(1!=$customer['status']){$this->error='用户被禁用';//用户禁用方式returnfalse;}//登录写入日志//action_log('customer_login','customer',$cid,$cid);/*设置登录的用户保存到cookie中*/return$this->_autoLogin($customer);}5.2.2系统用户管理模块系统的用户管理功能是基础功能,在管理后台无法创建前台用户,所有的注册用户数据都是通过前台注册得到的。在后台能够查看到所有账号的基本信息,如果密码丢失可以通过前台联系到网站客服,提供自己的个人信息验证身份修改密码。在进行景点门票购买与酒店预约时都会使用到用户基本信息,页面如图5.6所示。图5.6注册用户管理页面重点代码如下:for(vari=0;i)If(me.hisList[i].key==arg.key&&me.hisList[i].type==arg.type){Flag=false;}}if(flag){if(me.hisList.length>=5){me.hisList.shift();//判断数组中元素超过五条时去除第一条。保持只有5条。}me.hisList.push(arg);sessionStorage.setItem("hisList",JSON.stringify(me.hisList));//组织好的数组存入session}}if(sessionStorage.getItem('hisList')){me.hisList=JSON.parse(sessionStorage.getItem('hisList'));}5.2.3景点信息管理模块景点信息列表中会将杭州所有的景点都记录上去,对景点的宣传通过图片与文字的方式进行在详情页进行编辑,使用超文本框来降低页面排版开发工作。在对景点管理时会将每条景点上线的日期通过strtotime()函数改变格式可以更加方便的去使用比较函数,通过对时间降序排列的方式查找最新上线的景点信息,页面如图5.7所示。图5.7景点信息管理模块重点代码如下:functioncompareByTimeStamp($time1,$time2){if(strtotime($time1)<strtotime($time2))return1;elseif(strtotime($time1)>strtotime($time2))return-1;elsereturn0;}5.2.4酒店预约模块提交到系统的酒店预约信息可以在订单中查询,对酒店进行预约不仅可以用户自己完成还可以通过系统后台进行预约信息提交。所产生的数据信息都会存入同一张预约订单数据表当中,可以通过页面下方的打印与导出到EXCEL按钮获取订单信息。预约成功后顾客无法在线上完成修改工作,同样需要联系管理员才能对订单进行取消或调整日期的处理。页面如图5.8所示。图5.8酒店预约模块5.2.5系统管理模块系统管理功能比较丰富,其中主要的是能够管理系统公告、介绍与留言信息。系统公告与简介在前台有独立的展示位置,而留言则是跟景点信息绑定在一起的。留言信息就是对景点的评论,回复留言之后在前台用户提交留言的位置会将回复信息展示出来。如图5.9所示。图5.9系统管理页面6旅游网站测试6.1测试环境在对网站测试时软件环境需要和系统在网络工作环境中的配置因素一致,本文测试的软件环境如表6-1所示。表6-1测试软件环境项目属性操作

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论