《基于web的旅游网站设计与开发研究》6000字(论文)_第1页
《基于web的旅游网站设计与开发研究》6000字(论文)_第2页
《基于web的旅游网站设计与开发研究》6000字(论文)_第3页
《基于web的旅游网站设计与开发研究》6000字(论文)_第4页
《基于web的旅游网站设计与开发研究》6000字(论文)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

基于web的旅游网站设计与开发研究目录TOC\o"1-3"\h\u11485第1章引言 113785第2章旅游网站需求分析 1214152.1功能需求 131132.2非功能性需求 1144142.3可行性分析 220621第3章旅游网站总体设计 263313.1网站前台功能模块设计 263083.2网站后台功能模块设计 3117703.3数据库设计 34981第4章基于web的旅游网站的实现 611514.1网站前台模块实现 6223004.2网站后台模块实现 103976第5章旅游网站测试 14125865.1测试环境 1462735.2功能用例 1514071结论 1729334参考文献 18

摘要旅游业作为与人们生活最息息相关的行业备受重视外出旅游作为调剂生活的一种方式受到越来越多的人欢迎,景区为了更好的服务游客推出了各类的旅游宣传网站,在进行景区推广的同时为游客制定游玩方案。在此基础上设计了基于web的旅游网站,让用户能够通过网站制定出行完整攻略。本文主要介绍了旅游网站的背景信息,对系统开发意义进行阐述。网站实际使用中需要满足的用户需求进行分析,利用了PHP+MySQL数据库的技术开发了一个旅游网站系统,本系统主要设计了景点推荐、门票管理、公告发布、酒店预定等功能,而后台的管理员则通过登录管理员账号,可以对系统的用户基本信息、景点信息和酒店预约模块进行增加删除等操作。页面开发采用bootstrap框架,通过PHP语言进行动态页面实现使用MVC模式实现数据处理与页面设计的分离,最终实现了旅游网站的相应功能。关键词:旅游网站;bootstrap框架;MVC模式第1章引言互联网与行业的融合是未来的发展趋势,随着旅游市场的发展前景不断变好行业价值也有所提升,从事旅游行业相关产业的从业人员越来越多旅游体验也有所升级。各类旅游网站的搭建也紧随其后,旅游者们已经习惯从网络上获取景点的游玩旅游以及周边美食攻略。网站的设计与编程能力也正不断升级,为了实现更加丰富的功能在系统开发时项目的规模在慢慢变大。在大量的旅游网站面世的同时也存在一些问题,各个平台水平不一致有些旅游网站只是简单的景点介绍,无法给游玩者提供真实的意见。针对这种问题在进行本网站设计过程中对网站的主题进行了定义,将网站的服务范围框在了某一具体的旅游景点当中,围绕该景点的门票售卖、吃饭住宿进行相关功能模块的设计让所有又关景点的公告信息都能够及时发布。第2章旅游网站需求分析2.1功能需求基于web的旅游网站是面向小范围的景点介绍需求所开发的,网站主题是对杭州这个城市中的所有景点与旅游路线进行推荐,推动城市旅游以及周边行业的发展。旅游是一个放松的过程,无论是远途游玩还是就近游玩都会在景点附件产生购物、住宿类的消费。网站针对游客需求设计不同的景点板块与住宿板块,为游客提供方便。一方面旅游网站能够让官方信息能够有独立的传播平台,及时的通知景点经营时间变化情况,帮助游客提前进行景点门票预约,在出游的过程中起到向导的作用。本系统实现了前台用户注册、线路景点、预订购买和反馈与留言的功能,在后台,管理员可以查看和修改前台用户的基本信息,增加和查询景点的功能,对票务信息、酒店信息也可以进行添加和查询的操作,对前台用户留言管理等功能模块。同时为了发展旅游附属行业也在网站中设计了酒店预定等模块,通过活动推广等方式吸引游客在酒店入住,让游客感受到便利的同时也为酒店带来收益。2.2非功能性需求作为旅游推广网站,页面样式的浏览效果与上线的景点的宣传图片能够从视觉上吸引游客。网站首先需要能够对主流浏览器的兼容性问题进行处理,确保页面展示效果与开发效果一致。在不断推广过程中网站的用户数量会有一定程度的增长,访问人数增所会对网站响应速度造成影响,为了让网站的生命周期更长需要在开发阶段就考虑到后期大量的数据访问请求,提升整体性能。在使用票务购买酒店预定等消费功能时可以通过弹框的方式对用户的输入进行相应,提升用户交互感受。2.3可行性分析在项目开发之前需要按照软件工程流程对将要开发的系统进行可行性分析,通过分析结果判断系统开发是否可行。通过在可行性分析能够避免系统难度过大无法完整的实现索性徐功能的开发,以及项目实施需要过大的投入无法负担等情况的发生。并且需要注意法律上的可行性,如果因为意外使用了一些他人的东西导致侵权让系统无法上线会造成重大的损失。系统开发完成不能代表就已经具备足够的竞争力,系统运行的性能会给使用者带来非常直观的感受,好的产品体验能够让系统更受欢迎。首先需要保证操作系统的过程中是流畅的、简单的,在保证功能能够正常使用的同时需要以用户体验为重点。通过学习比较知名的旅游的功能设计与界面设计方法能够让网站在设计的过程中更加专业。同时在设计旅游网站的过程中开发功能的同时设计操作简洁网页页面,能够提升系统可用性。第3章旅游网站总体设计3.1网站前台功能模块设计外出旅游会涉及到景点、酒店、就餐等多个方面,旅游网站的功能模块也会比较丰富。在对前台功能进行设计时将重点放在了景点的推荐、路线规划、酒店预定三个方面。在网站首页会通过图片的方式对城市中比较有名的景点或者是比较好的旅游路线进行推荐,用户在网站完成注册后能够对城市景点进行预约对酒店进行预约。具体的功能结构图如3.1所示。图3.1旅游网站前台功能结构图3.2网站后台功能模块设计在网站后台能够对旅游网站中的各类文章信息进行创建与修改,对不同的用户模块、票务模块在设计页面的时候采用了二级菜单的方式让同一模块的功能不会因为菜单条数过多而变的凌乱。对于系统的基本信息也可以通过后台进行管理,让系统能够灵活的进行页面的简单调整。具体的功能结构图如3.2所示。图3.2旅游网站后台功能结构图3.3数据库设计3.3.1实体关系分析旅游网站当中的实体包括景点、门票、用户、酒店、公告等,他们之间是有对应关系的。其中景点与门票之间是一对多的关系,门票是景点的一部分。而用户与门票、酒店之间都会同样是一对多的关系,一个用户可以购买多个门票也可以预约多个房间,同时在进行门票预约与酒店预约信息记录的过程中需要将用户名称作为外键记录,便于不同对预约信息进行管理。3.3.2数据库表设计1、通过记录用户信息能够方便管理,例如在特殊时期对部分地区游客的来访见控制,具体属性如表3-1所示。景点通过编号进行区分,使用网站展示景点的过程会将系统的地址通过百度地图进行展示,具体属性如表3-2所示。3、票务信息是由景点信息与下单用户信息共同组成的,如果当日售出的门票数量到达限制可以拒绝审核通过,属性如表3-3所示。酒店预约需要预付费用,使用该功能需要先进行用户注册这样产生的酒店订房信息就能够与用户进行绑定。第4章基于web的旅游网站的实现4.1网站前台模块实现4.1.1网站推荐模块除了视频之外最能够吸引人目光的就是图片,高质量的景点图片能够对游客产生足够的吸引力,勾起他们想来一探究竟的欲望。因此在网站的首页会使用比较重要的头部板块来进行景点图片的轮播宣传进行推广。从页面截图中可以看到当前登录的用户的名称与权限,在登录状态下的预约操作会将信息存储到对应的用户数据表下进行管理。网站涵盖的所有功能入口都被放置在头部,如图4.1所示。图4.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');}}4.1.2网站新闻列表网站内的新闻板块不仅可以用来发表景点相关的新闻,还可以将游客在杭州旅游所做的攻略与感受进行收集展示在网站当中,拉近游客之间的距离。网站通过访问统计的方法将所有文章的阅读次数进行记录,在首页推荐时会选择浏览量比较高的文章推荐,在新闻列表也会将次数进行展示,如图4.2所示。图4.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);}4.1.3景点信息展示模块对于杭州的所有景点通过标号的方式进行管理,游客想要搜索景点信息则可以通过名称匹配的方式进行查询。在列表展示的时候只显示了名称、图片与地址,游客可以通过详情页面查看到景点的具体信息,如图4.3所示。图4.3景点列表页面4.1.4酒店预约模块酒店预约需要先进行用户注册,如果当前没有登录用户账户在进入这个模块时会自动跳转到用户注册页面。在进行页面开发的过程中对于备注信息这一栏目的文本框样式进行了调整,通过拉拽可以调整文本框的大小方便用户输入,如图4.4所示。图4.4酒店预约管理页面重点代码如下:/***酒店预约的操作方法*自定义的一个函数用于数据添加后做的相应处理操作,使用时调用*@paramint$rid*/publicfunctionReserve$ridArrs=array()){if(is_string($ridArrs)){$ridArrs=explode(',',$ridArrs);}//同时添加属性内容Db::name('reservecontent_attr')->where(['rid'=>['IN',$ridArrs]])->add();}}4.2网站后台模块实现4.2.1管理员登录模块在进行网站登录的过程中使用游客与管理者使用的登录界面都是同一个,区分是对于权限的选择。如果是用户权限登录后依旧进入到网站前台,如果是管理员权限就会进入网站后台。如图4.5所示。图4.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);}4.2.2系统用户管理模块系统的用户管理功能是基础功能,在管理后台无法创建前台用户,所有的注册用户数据都是通过前台注册得到的。在后台能够查看到所有账号的基本信息,如果密码丢失可以通过前台联系到网站客服,提供自己的个人信息验证身份修改密码。在进行景点门票购买与酒店预约时都会使用到用户基本信息,页面如图5.6所示。图4.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所示。图4.7景点信息管理模块重点代码如下:functioncompareByTimeStamp($time1,$time2){if(strtotime($time1)<strtotime($time2))return1;elseif(strtotime($time1)>strtotime($time2))return-1;elsereturn0;}5.2.4酒店预约模块提交到系统的酒店预约信息可以在订单中查询,对酒店进行预约不仅可以用户自己完成还可以通过系统后台进行预约信息提交。所产生的数据信息都会存入同一张预约订单数据表当中,可以通过页面下方的打印与导出到EXCEL按钮获取订单信息。预约成功后顾客无法在线上完成修改工作,同样需要联系管理员才能对订单进行取消或调整日期的处理。页面如图5.8所示。图4.8酒店预约模块5.2.5系统管理模块系统管理功能比较丰富,其中主要的是能够管理系统公告、介绍与留言信息。系统公告与简介在前台有独立的展示位置,而留言则是跟景点信息绑定在一起的。留言信息就是对景点的评论,回复留言之后在前台用户提交留言的位置会将回复信息展示出来。如图5.9所示。图4.9系统管理页面第5章旅游网站测试5.1测试环境在对网站测试时软件环境需要和系统在网络工作环境中的配置因素一致,本文测试的软件环境如表5-1所示。表5-1测试软件环境项目属性操作系统Windows10数据库MySQL5.6开发工具包PhpStorm2019.1、phpstudyWEB服务器Apache浏览器内核X5内核基础库版本2.7.05.2功能用例测试针对旅游网站中的用户模块、景点展示、酒店预约三个主要模块进行了测试用例的设计,通过比较预计输出结果与实际输出结果能够测试功能的可用性。在用例设计过程中会从合法输入与不合法输入两个方面举例,进行验证。表5-2用户登录模块测试用例模块名称用户登录测试条件访问本地地址,进入网站登录页面输入项预计输出项实际输出进入登录页面,登录已经注册过的用户,选择用户权限进入前台,头部显示当前登录用户名称符合预期进入登录页面,登录已经注册过的用户,选择管理员权限无法完成登录,弹框显示没有当前用户符合预期进入登录页面,输入管理员账号密码,选择管理员权限权限进入网站后台符合预期测试结论测试记录使用游客账号与管理员账号都能够对网站进行访问,当输入异常数据时系统能够做出相应反馈。表5-3景点管理模块测试用例模块名称景点管理测试条件进入后台管理页面输入项预计输出项实际输出在前台景点列表中分别使用编号与名称搜索景点页面显示结果与搜索结果一致符合预期在后台添加新的景点信息并提交新编辑的景点能够在前台正常展示符合预期在后台景点列表中分别使用编号与名称搜索景点页面显示结果与搜索结果一致符合预期测试结论测试记录使用游客账号与管理员账号都能够使用酒店预约功能表5-4酒店预约模块测试用例模块名称酒店预约测试条件进入后台管理页面输入项预计输出项实际输出在前台完成用户登录后在酒店预约页面提交对应信息酒店预约信息能够在后台搜索到符合预期在前台未进行用户登录的状态下进入使用酒店预约功能页面跳转到用户登录页面符合预期通过管理后台提交酒店预约信息酒店预约信息能够在后台搜索到符合预期测试结论测试记录使用游客账号与管理员账号都能够使用酒店预约功能结论对本篇文章的总结即使对工作内容的一个回顾,也是对旅游网站升级的一个展望。针对旅游网站这个主题,文章

温馨提示

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

评论

0/150

提交评论