php周口公交查询系统的设计与实现

摘  要
周口公交查询系统是一个旨在为市民提供实时公交信息服务的在线平台。通过该系统,用户能够快速查询到公交车的实时位置、预计到达时间、路线信息等相关内容。系统支持多种查询方式,包括站点查询、线路查询和换乘查询,同时提供即时更新的运营状态,如车辆故障、道路施工等影响公交行驶的信息。此外,系统还具备用户反馈机制,允许乘客对服务质量进行评价。周口公交查询系统的推出极大提高了公交出行的便捷性和效率,优化了乘客的乘车体验,并促进了城市公共交通管理的现代化进程。
本系统主要是针对公交查询信息的管理,采用PHP语言编写,数据库使用MySQL数据库。本系统主要包括用户管理,车次管理,公交车管理,公交站点管理,线路类型管理,公交线路管理,友情链接管理,留言板,系统管理,我的信息等功能。经过测试,本系统可以满足公交查询管理的基本要求。

关键词:MySQL数据库;公交查询;PHP


ABSTRACT
The Zhoukou Bus Query System is an online platform aimed at providing real-time bus information services for citizens. Through this system, users can quickly query real-time location, estimated arrival time, route information, and other related information of buses. The system supports multiple query methods, including station query, route query, and transfer query, while providing real-time updated operational status, such as vehicle malfunctions, road construction, and other information that affects public transportation. In addition, the system also has a user feedback mechanism, allowing passengers to evaluate the quality of service. The launch of the Zhoukou Public Transport Query System has greatly improved the convenience and efficiency of public transportation, optimized the riding experience of passengers, and promoted the modernization process of urban public transportation management.
This system is mainly designed for the management of public transportation query information, written in PHP language and using MySQL database. This system mainly includes functions such as user management, train number management, bus management, bus stop management, route type management, bus route management, friendship link management, message board, system management, and my information. After testing, this system can meet the basic requirements of public transportation query management.

Keywords: MySQL database; Public transportation inquiry; PHP


目  录
第1章  绪论    - 1 -
1.1  选题背景与意义    - 1 -
1.2  国内外研究现状    - 1 -
1.3  主要研究内容    - 2 -
1.4  全文组织结构    - 2 -
第2章  系统开发技术简介    - 3 -
2.1  PHP开发语言    - 3 -
2.2  MySQL数据库技术简介    - 3 -
2.3  VUE.JS简介    - 3 -
2.4  B/S结构    - 3 -
2.5  推荐算法介绍    - 4 -
第3章  系统分析    - 5 -
3.1  系统可行性分析    - 5 -
3.1.1  技术可行性    - 5 -
3.1.2  操作可行性    - 5 -
3.1.3  运行可行性    - 5 -
3.1.4  经济可行性    - 5 -
3.2  需求分析    - 6 -
3.2.1  性能需求    - 6 -
3.2.2  用户需求    - 6 -
3.3  系统UML用例分析    - 6 -
3.4  系统流程分析    - 7 -
3.4.1  添加信息流程    - 7 -
3.4.2  修改信息流程    - 8 -
3.4.3  删除信息流程    - 9 -
3.4.4  注册流程    - 9 -
3.4.5  登录流程    - 10 -
第4章  系统设计    - 12 -
4.1  系统设计原则    - 12 -
4.2  系统概要设计    - 12 -
4.3  系统结构设计    - 12 -
4.4  数据库设计    - 13 -
4.4.1  数据库设计原则    - 13 -
4.4.2  E-R图设计    - 13 -
4.4.3  数据库表设计    - 14 -
第5章  系统的实现    - 23 -
5.1  前台功能实现    - 23 -
5.1.1  系统首页页面    - 23 -
5.1.2  个人中心    - 24 -
5.2  后台管理员功能实现    - 24 -
第6章  系统测试    - 28 -
6.1  测试目的与意义    - 28 -
6.2  测试方法    - 28 -
6.3  测试用例    - 28 -
6.4  测试结果    - 29 -
第7章  总结与展望    - 30 -
7.1  总结    - 30 -
7.2  展望    - 30 -
参考文献    - 31 -
致    谢    - 32 -


第1章  绪论
1.1  选题背景与意义
随着城市化进程的加快,周口市公共交通承担着越来越重要的角色,有效缓解了城市交通压力并提升了市民出行效率。然而,由于信息传递渠道的限制和管理手段的滞后,乘客常常面临无法准确获取公交车实时位置和预计到达时间等问题,导致出行计划难以精确安排,有时甚至因等待时间长而错过重要事件。此外,对于公交管理部门而言,缺乏即时的用户反馈机制也增加了运营调整的难度。在这种背景下,开发一个功能全面、操作简便、信息准确的周口公交查询系统显得尤为迫切。
构建一个高效实用的周口公交查询系统对于提升公交服务水平和改善乘客体验至关重要。该系统能够提供包括车辆定位、运行轨迹、预计到站时间等在内的全方位公交出行信息,极大方便了乘客规划行程,减少等车焦虑,提高整体出行效率。通过收集用户使用过程中的反馈,公交管理部门可以及时了解服务中的不足,快速响应市民需求,动态优化调整运营策略。该系统还有助于提高公交车辆的调度效率,减轻交通拥堵,促进绿色出行,进而推动城市可持续发展。周口公交查询系统的实现将显著提升公共交通吸引力,助力打造更加智慧的城市公共交通网络。
1.2  国内外研究现状
在国内,随着智慧城市建设的推进,公交查询系统作为城市公共服务的重要组成部分受到了广泛关注。众多城市相继推出了基于互联网的实时公交查询服务,通过官方网站、移动应用程序或第三方平台提供公交线路查询、实时位置跟踪、预计到站时间预测等功能。这些系统通常依赖于GPS定位技术、GIS地理信息系统以及大数据分析等现代信息技术,实现对公交车辆动态监控和信息实时更新。然而,不同城市间公交查询系统的普及程度和技术成熟度存在差异,一些小城市和地区的系统尚处于起步阶段,面临数据准确性、系统稳定性及用户体验等方面的挑战。
在国外,尤其是发达国家,智能交通系统(ITS)的建设更为成熟,公交查询系统的研究与应用已经较为深入。许多国外城市不仅提供基本的实时公交信息服务,还融合了更为高级的功能,如实时交通流量分析、智能路线规划、多模式出行链构建等。这些系统往往采用更为先进的算法模型和更高效的数据处理方式,提供更加精准和个性化的服务。例如,通过分析历史数据和实时状况,系统能够预测并建议最优出行方案,减少等待时间和拥堵风险。此外,一些系统还集成了与城市其他交通方式的无缝对接,为用户提供一站式的出行解决方案。尽管如此,国外在公交查询系统的研究仍在不断探索中,特别是在提高系统的普适性、无障碍设计以及跨区域互联互通等方面。
1.3  主要研究内容
本课题的周口公交查询系统开发选用PHP作为后端开发语言,并引入了基于用户相似度的协同过滤算法,用于提供个性化的推荐功能。数据存储和操作则采用了MySQL数据库。前端开发部分,使用了HTML、CSS、JavaScript以及Vue.js这一流行的前端框架,使得界面设计和用户交互变得更加直观和便捷。在开发工具方面,选用了Eclipse以及Navicat,其中Eclipse作为一款成熟的开发工具,带来了丰富的功能和强大的支持,而Navicat作为数据库管理工具,提供了友好的用户界面和强大的SQL处理能力,从而大大提高了开发效率。系统分管理员和用户两个角色,主要包括对用户管理,车次管理,公交车管理,公交站点管理,线路类型管理,公交线路管理,友情链接管理,留言板,系统管理,我的信息等功能进行操作。
1.4  全文组织结构
本文共分为7章,文章结构及各章内容简介如下:
第1章 主要介绍及探讨论文研究的背景、目的和意义,以及周口公交查询系统国内外的研究现状。最后,给出本文的整体组织结构。
第2章 主要介绍了本次系统开发过程中用到的相关技术及开发工具,如MySQL数据库,B/S模式等。
第3章 主要介绍了本次系统开发过程中的系统分析过程,从可行性分析、需求分析、系统UML用例分析、总体业务流程分析、模块流程分析这几方面进行了系统分析。
第4章 主要介绍了本次系统开发过程中的系统设计过程,从系统设计原则、系统概要设计、数据库设计这几方面进行了详细描述。
第5章 主要介绍了本次系统开发过程中的系统实现环节,从客户端的各个功能模块的实现和管理后台各个功能模块的实现方面进行了详细描述。
第6章 主要介绍了本次系统开发过程中的系统测试环节,从测试的目的与意义、测试方法、测试用例、测试结果等方面进行了详细描述。
第7章 主要介绍了本次系统开发过程的总结以及本次开发过程的不足和以后的展望。


第2章  系统开发技术简介
2.1  PHP开发语言
PHP,全称:Hypertext Preprocessor,即“超文本预处理器”,是一种开源的服务器端脚本语言,主要用于Web开发。PHP起源于1994年,由Rasmus Lerdorf创建,最初只是一个简单的用Perl语言编写的程序,用于统计网站的访问者数量。随着时间的推移,PHP逐渐发展成为一种功能强大、灵活且易于使用的编程语言,被广泛应用于各种类型的Web应用程序开发[1]。
2.2  MySQL数据库技术简介
MySQL数据库技术是一种开源的关系型数据库管理系统(RDBMS),广泛应用于各种规模的企业和组织中。它以其高性能、稳定性和易用性而受到广泛赞誉。MySQL数据库技术的核心优势在于其灵活性和可扩展性,可以轻松地适应不同类型和规模的应用程序需求。MySQL数据库技术采用了客户端-服务器架构,允许用户通过各种编程语言和工具与数据库进行交互。这种架构使得MySQL可以轻松地与其他系统和服务集成,实现数据的高效传输和处理。MySQL还支持多种存储引擎,如InnoDB、MyISAM等,以满足不同应用场景的需求[2]。
2.3  VUE.JS简介
Vue.js是一款用于构建用户界面的渐进式JavaScript框架。与其他大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动[3]。
2.4  B/S结构
B/S结构,即浏览器/服务器(Browser/Server)结构,是一种广泛应用于互联网和企业内部网络的软件系统架构。在这种架构中,客户端通过浏览器与服务器进行通信,服务器负责处理客户端的请求并返回相应的数据。这种结构具有跨平台、易于维护和升级等优点,已经成为了现代Web应用的主流开发模式[4]。
在B/S结构中,客户端通常是一个通用的浏览器,如Google Chrome、Mozilla Firefox等。用户通过浏览器访问服务器上的网页或应用程序,无需安装额外的软件。这使得B/S结构的软件具有较高的可用性和易用性,用户只需具备基本的上网条件即可使用[5]。
服务器端则负责处理客户端的请求,执行相应的业务逻辑,并将结果以HTML、CSS、JavaScript等格式返回给客户端。服务器端可以采用各种编程语言和框架进行开发,如Java、PHP、Python、.NET等。为了提高系统的可扩展性和性能,服务器端还可以采用分布式计算、负载均衡等技术。
B/S结构的优势在于其高度的模块化和可扩展性。各个功能模块可以独立开发和部署,降低了系统的复杂性和耦合度。B/S结构还具有良好的安全性和可靠性,因为服务器端可以对数据进行集中管理和保护,避免了数据泄露和丢失的风险。
2.5  推荐算法介绍
推荐算法是一类算法,它根据用户的历史行为、偏好和需求,利用数据分析技术为用户推荐他们可能感兴趣的商品或服务。常见的推荐算法包括基于内容的推荐、协同过滤推荐以及混合推荐等。基于内容的推荐通过分析用户过去喜欢的物品特征来推荐类似的物品;协同过滤推荐则分为用户基和物品基两种,前者通过找到相似用户来推荐物品,后者则是通过找到相似物品来进行推荐;混合推荐结合了多种方法,以提高推荐的准确度和覆盖度。随着人工智能技术的发展,深度学习也被应用于推荐系统中,使得推荐更加精准和个性化[6]。


第3章  系统分析
3.1  系统可行性分析
可行性分析的目的是为了在尽可能短的时间通过最小的代价确定是否能解决此问题。通过对周口公交查询系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。接下来,我会从以下几个方面来阐述本系统开发的可行性:
3.1.1  技术可行性
基于PHP的周口公交查询系统根据设计的实际情况,从而选择使用B/S结构、PHP技术,这些强大的框架支持了复杂业务逻辑的实现。选用了MySQL数据库,确保数据的安全性和可靠性。这些技术实现了性能的稳定性、升级的优异性、开发的迅猛性、管理的简洁性、语言新颖性以及服务的新颖性。
综合上述分析,可以得出周口公交查询系统的开发在技术方面的可能性是很高的。
3.1.2  操作可行性
周口公交查询系统的页面简单,功能一目了然,便于不同类型用户的操作,比如登录界面和注册的界面就采用了比较常见的界面窗口来实现用户的登录和注册操作,通过手机访问操作,用户只要平时使用过是手机软件都能进行访问操作。周口公交查询系统的开发语言选择的是PHP语言,基于MySQL数据库,这些使系统加倍的完善。
综合上述分析,得出周口公交查询系统的开发在操作方面的可能性很高。
3.1.3  运行可行性
基于PHP的周口公交查询系统运行配置要求较低,普通的消费者以及用户都具有足够稳定的条件来运行此系统。基于PHP的周口公交查询系统在运行方面是可行的。
3.1.4  经济可行性
本系统的开发主要是针对于毕业设计的完成,不会应用于商业用途,工具方面只需要一台电脑和相关软件就可以完成开发,系统的开发周期一般在3个月左右,所以在经济方面不会产生任何负担,因此开发该系统在经济上是可行的。
综上所述,基于PHP的周口公交查询系统不论是在经济可行性方面,技术可行性方面、运行可行性方面还是在操作可行性方面都是可行的,因此,符合可行性分析。
3.2  需求分析
本系统针对传统公交查询管理模式的弊端,从而开发出的一种功能更加全面高效的周口公交查询系统,主要目的就是通过本系统来改变公交查询管理上的系统,满足用户的需求。提升管理质量,丰富高校生活。在系统开发初期,为了更好的了解人们对周口公交查询系统的需求以及对现有同类系统的了解和建议,在指导老师的协助下设计了一份调查问卷,通过展开走访调查,并根据调查问卷的实际填写情况从以下方面总结出了当下人们对周口公交查询系统的态度以及要求,这样可以更出色的完成本次毕业论文,调查问卷详情见附录。
3.2.1  性能需求
1.在周口公交查询系统的开发过程中,我们必须要考虑以下几点:
2.安全性:在信息化的时代,信息是宝贵的财富,保证信息的安全,特别是个人信息尤为重要,对安全性的要求也就更高了;
3.先进性:系统要符合现今的流行走势,开发要符合用户的需求,能够快速准确的满足公交查询管理的各种需求;
4.可扩展性:周口公交查询系统给用户带来了极大的便利,提高了日常工作效率,备受用户欢迎,因此在周口公交查询系统开发过程中,我们需要预想到未来的系统的扩展和功能进一步的发展等一系列问题;
5.有效性:有效性最主要的是指功能方面的有效性,所以在设计周口公交查询系统功能的时候我们一定要通过前期的调查了解用户需求,并想方设法的以满足各方面的需求为目的。
3.2.2  用户需求
周口公交查询系统主要是为两类人服务的,他们分别是管理员和用户。管理员总体负责整体系统的运行维护,统筹协调。用户最主要的功能需求是修改个人信息,修改密码,我的收藏等。
3.3  系统UML用例分析
UML是 Unified Modeling Language的缩写,又称统一建模语言。是开发者对客观事物进行建模的标记,同时也是为开发者了解系统需要什么样的功能和整个流程是什么样的做的前期工作。周口公交查询系统的UML用例分析详情如下图所示。

图3-1管理员用例图


图3-2 用户用例图

3.4  系统流程分析
3.4.1  添加信息流程
管理人员或者其他的系统用户在选择添加信息的时候,系统会自己根据上一个添加的信息的ID号码,自动的给将要添加的这条信息一个属于它自己的ID号码。这时候是不用管理人员或者其他需要添加信息的用户自己填写的。当输入了想要往系统里面增加的信息后,系统就会对所输入的信息提交一个验证的过程。如果合法,则提示信息为添加成功。这时这条信息就会被添加到了信息对应的表中。如果不合法,则提示信息为添加失败,这就要重新把信息在输入一次来验证。流程详情如图3-3所示。

图3-3添加信息流程图

3.4.2  修改信息流程
管理人员或者其他用户找到需要修改的信息后,然后将要修改的数据对应的输入到修改框里面。当数据合法的时候,则提示信息为添加成功。这时候这条数据就会被添加到了数据对应的数据库表中。如果不合法,则提示信息为添加失败,这就要重新把数据在输入一次来验证。修改信息流程图如图3-4所示。

图3-4修改信息流程图

3.4.3  删除信息流程
管理人员或者其他的用户选择自己想要删除一条信息后,点击后面的“删除”按钮,系统就会给管理人员或者其他的用户一个提示表明信息删除成功了,与此同时系统会从数据库中将管理人员或者其他的用户想要删除的这条信息给删除掉。删除信息流程图如图3-5所示。

图3-5删除信息流程图

3.4.4  注册流程
注册的时候要按照注册界面上的注册要求填写数据进行注册,一一对应的填写相应地注册的个人资料。如果注册信息符合要求就会注册成功,如不符合要求就会要求重新填写。注册成功时这条注册信息就会被添加到了数据对应的数据库表中。系统注册流程图详情如图3-6所示。

图3-6系统注册流程图

3.4.5  登录流程
打开系统后在登录界面输入用户名和密码,如果是准确信息的话,用户就会登录进周口公交查询系统。如果用户输入的任何一个信息不一致的话,系统就会提示本次登录失败了,那么用户需要重新在输入一次。登录流程图如图3-7所示。

图3-7登录流程图


第4章  系统设计
4.1  系统设计原则
根据走访调研调查,并根据人们对周口公交查询系统的切实需求,周口公交查询系统的开发按照以下原则进行。
1.有效性:有效性指站点能尽自己最大的努力来使用户需求的目前还没有开发的功能被满足了。可用性指我们可以通过对站点操作来实现系统设计出的各个功能;
2.高可靠性:系统开发必不可少的一个要求就是可靠性,周口公交查询系统通过合理而先进的设计和系统资源的优化选型,来更好地实现系统的可靠性这一个特点;
3.高安全性:在系统设计的过程中,设计人员应该最大限度的把所有可以给系统提供安全保证的资源最大限度的利用起来。
4.2  系统概要设计
周口公交查询系统只要用户能连上Internet,就能在任意连续时间段里面、任意地理位置里的使用。系统工作原理图详情见图4-1。

图4-1系统工作原理图
4.3  系统结构设计
构图是系统的体系结构,体系结构是体系结构体系的重要组成部分。系统的总体结构设计如图4-2所示。

图4-2 系统总体架构图

4.4  数据库设计
4.4.1  数据库设计原则
在数据库设计过程中应该充分考虑以下几点:
1.尽最大的可能满足周口公交查询系统目前的需求,这是数据库设计的基石;
2.需要分清主次,让数据结构一目了然;
3.需要保持适当的冗余,用来维持系统的良好的性能;
4.可以应对日趋壮大的数据量;
5.可以应对可能出现的新需求。
4.4.2  E-R图设计
E-R图(Entity Relationship Diagram)是指用来表现数据库中实现实际世界建模的数据库概念模型。本系统将“用户、网站公告、公交线路评论、系统简介、留言板、收藏”等作为实体,它们的局部E-R图,如图4-3所示:

图4-3局部E-R图
4.4.3  数据库表设计
数据库表的设计是本系统开发里最不可忽视的环节,周口公交查询系统各个表的设计结果如下:
表4-1:友情链接
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
biaoti    varchar    200    标题        
fengmian    longtext    4294967295    封面        
neirong    longtext    4294967295    内容        
xiangqing    longtext    4294967295    详情        
wangzhi    varchar    200    网址        
fabushijian    date        发布时间        

表4-2:公交线路评论表
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
refid    bigint        关联表id        
userid    bigint        用户id        
avatarurl    longtext    4294967295    头像        
nickname    varchar    200    用户名        
content    longtext    4294967295    评论内容        
reply    longtext    4294967295    回复内容        

表4-3:线路类型
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
xianluleixing    varchar    200    线路类型        

表4-4:用户
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
yonghuzhanghao    varchar    200    用户账号        
yonghuxingming    varchar    200    用户姓名        
mima    varchar    200    密码        
xingbie    varchar    200    性别        
touxiang    longtext    4294967295    头像        
dianhuahaoma    varchar    200    电话号码        

表4-5:配置文件
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
name    varchar    100    配置参数名称        
value    varchar    100    配置参数值        
url    varchar    500    url        

表4-6:管理员表
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
username    varchar    100    用户名        
password    varchar    100    密码        
image    varchar    200    头像        
role    varchar    100    角色        管理员
addtime    timestamp        新增时间        CURRENT_TIMESTAMP

表4-7:车次
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
checi    varchar    200    车次        

表4-8:系统简介
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
title    varchar    200    标题        
subtitle    varchar    200    副标题        
content    longtext    4294967295    内容        
picture1    longtext    4294967295    图片1        
picture2    longtext    4294967295    图片2        
picture3    longtext    4294967295    图片3        

表4-9:关于我们
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
title    varchar    200    标题        
subtitle    varchar    200    副标题        
content    longtext    4294967295    内容        
picture1    longtext    4294967295    图片1        
picture2    longtext    4294967295    图片2        
picture3    longtext    4294967295    图片3        

表4-10:收藏表
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
userid    bigint        用户id        
refid    bigint        商品id        
tablename    varchar    200    表名        
name    varchar    200    名称        
picture    longtext    4294967295    图片        
type    varchar    200    类型        1
inteltype    varchar    200    推荐类型        
remark    varchar    200    备注        

表4-11:网站公告分类
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
typename    varchar    200    分类名称        

表4-12:网站公告
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
title    varchar    200    标题        
introduction    longtext    4294967295    简介        
typename    varchar    200    分类名称        
name    varchar    200    发布人        
headportrait    longtext    4294967295    头像        
clicknum    int        点击次数        0
clicktime    datetime        最近点击时间        
thumbsupnum    int        赞        0
crazilynum    int        踩        0
storeupnum    int        收藏数        0
picture    longtext    4294967295    图片        
content    longtext    4294967295    内容        

表4-13:留言板
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
userid    bigint        留言人id        
username    varchar    200    用户名        
avatarurl    longtext    4294967295    头像        
content    longtext    4294967295    留言内容        
cpicture    longtext    4294967295    留言图片        
reply    longtext    4294967295    回复内容        
rpicture    longtext    4294967295    回复图片        

表4-14:公交站点
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
zhandianmingcheng    varchar    200    站点名称        
zhandianzhaopian    longtext    4294967295    站点照片        
daolumingcheng    varchar    200    道路名称        
xiangxidizhi    varchar    200    详细地址        
jingguogongjiao    longtext    4294967295    经过公交        
zhoubianzhandian    longtext    4294967295    周边站点        
storeupnum    int        收藏数        0

表4-15:公交线路
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
gongjiaochehao    varchar    200    公交车号        
luxiantupian    longtext    4294967295    路线图片        
checi    varchar    200    车次        
xianluleixing    varchar    200    线路类型        
shifazhandian    varchar    200    始发站点        
tujingzhandian    longtext    4294967295    途径站点        
zhongdianzhandian    varchar    200    终点站点        
huanchengxinxi    longtext    4294967295    换乘信息        
yunxingshijian    varchar    200    运行时间        
luxianxiangqing    longtext    4294967295    路线详情        
gengxinshijian    datetime        更新时间        
clicktime    datetime        最近点击时间        
clicknum    int        点击次数        0
discussnum    int        评论数        0
storeupnum    int        收藏数        0

表4-16:公交车
字段名称    类型    长度    字段说明    主键    默认值
id    bigint        主键    主键    
addtime    timestamp        创建时间        CURRENT_TIMESTAMP
gongjiaochehao    varchar    200    公交车号        
chepaihaoma    varchar    200    车牌号码        
cheliangzhaopian    longtext    4294967295    车辆照片        
shifabanci    varchar    200    始发班次        
mofabanci    varchar    200    末发班次        
shifazhandian    varchar    200    始发站点        
zhongdianzhandian    varchar    200    终点站点        
zuoweishuliang    int        座位数量        
piaojia    double        票价        
zhandianshijian    varchar    200    站点时间        
xiangxijieshao    longtext    4294967295    详细介绍        
storeupnum    int        收藏数        0

第5章  系统的实现
5.1  前台功能实现
5.1.1  系统首页页面
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示:

图5-1 系统首页界面

在注册流程中,用户在Vue前端填写必要信息(如用户账号、密码等)并提交。前端将这些信息通过HTTP请求发送到php后端。后端处理这些信息,检查用户名是否唯一,并将新用户数据存入MySQL数据库。完成后,后端向前端发送注册成功的确认,前端随后通知用户完成注册。这个过程实现了新用户的数据收集、验证和存储;注册界面如图5-2所示:

图5-2 系统注册界面

公交车:在公交车页面的输入栏中输入公交车号、车牌号码、始发站点和终点站点进行查询,可以查看到公交车详细信息,并根据需要进行收藏等详细操作;公交车页面如图5-3所示:

图5-3公交车详细页面

5.1.2  个人中心
个人中心:在个人中心页面可以对个人中心,修改密码,我的收藏等进行详细操作;个人中心页面如图5-4所示:

图5-4个人中心界面

5.2  后台管理员功能实现
在登录流程中,用户首先在Vue前端界面输入用户名和密码。这些信息通过HTTP请求发送到php后端。后端接收请求,通过与MySQL数据库交互验证用户凭证。如果认证成功,后端会返回给前端,允许用户访问系统。这个过程涵盖了从用户输入到系统验证和响应的全过程。后台登录页面如图5-5所示。

图5-5 后台登录界面

管理员进入主页面,主要功能包括对用户管理,车次管理,公交车管理,公交站点管理,线路类型管理,公交线路管理,友情链接管理,留言板,系统管理,我的信息等功能进行操作。管理员主页面如图5-6所示:

图5-6管理员主界面

用户管理:使用PHP来开发API。您可以创建一个Controller.php文件,其中包含搜索、新增和删除用户信息的功能。这些功能会与数据库进行交互,可以使用mysqli来操作MySQL数据库。例如,添加用户信息的函数会接收前端发送的POST请求,包含用户信息,并将这些信息插入到数据库的用户表中。在前端,使用Vue.js来构建用户界面。创建一个用户信息的Vue组件,它会有表单用于输入用户的信息,和列表展示所有用户的信息。通过Vue的数据绑定和事件处理,当表单提交时,可以发送一个请求到后端的API,实现添加用户信息的功能。同样地,可以通过发送不同的请求来实现用户信息的详情、修改和删除。如图5-7所示:

图5-7用户管理界面

线路类型管理:使用PHP来开发API。您可以创建一个Controller.php文件,其中包含搜索、新增和删除线路类型的功能。这些功能会与数据库进行交互,可以使用mysqli来操作MySQL数据库。例如,添加线路类型的函数会接收前端发送的POST请求,包含线路类型信息,并将这些信息插入到数据库的线路类型表中。在前端,使用Vue.js来构建用户界面。创建一个线路类型的Vue组件,它会有表单用于输入线路类型的信息,和列表展示所有线路类型的信息。通过Vue的数据绑定和事件处理,当表单提交时,可以发送一个请求到后端的API,实现添加线路类型的功能。同样地,可以通过发送不同的请求来实现线路类型的详情、修改和删除。如图5-8所示:

图5-8线路类型管理界面

友情链接管理:使用PHP来开发API。您可以创建一个Controller.php文件,其中包含搜索、新增和删除友情链接的功能。这些功能会与数据库进行交互,可以使用mysqli来操作MySQL数据库。例如,添加友情链接的函数会接收前端发送的POST请求,包含友情链接信息,并将这些信息插入到数据库的友情链接表中。在前端,使用Vue.js来构建用户界面。创建一个友情链接的Vue组件,它会有表单用于输入友情链接的信息,和列表展示所有友情链接的信息。通过Vue的数据绑定和事件处理,当表单提交时,可以发送一个请求到后端的API,实现添加友情链接的功能。同样地,可以通过发送不同的请求来实现友情链接的详情、修改和删除。如图5-9所示:

图5-9友情链接管理界面


第6章  系统测试
6.1  测试目的与意义
系统测试是系统开发过程的最后阶段,而且是非常重要的一个阶段,测试阶段繁琐又漫长,很多时候我们都意识不到它的重要性。它的必要性体现在它是能够保障系统质量与可靠性的重要一关,是对系统的最后一步审查。
通过测试以确定用户对该系统的需求是否已经得到了满足,发现问题以后,我们要不断的调试以找出出现问题的具体原因与位置,然后对其进行修改,直到达到本系统要求的正确度。
6.2  测试方法
在系统开发的过程中,对于系统的各个功能模块,每当完成一个部分功能的编码以后,都需要及时的对该模块进行测试,根据程序设计的逻辑结构,构建与之相适应的测试用例,对该模块的功能结构的合理性进行测试和验证,此外,还需要设计相应的测试方法检验该功能单元的编码正确性。
6.3  测试用例
为了测试周口公交查询系统用户以及管理员的登录以及各功能能否正常运行,设计了以下测试用例。
表6-1 测试用例设计表
编号    功能模块    步骤    预期结果
1    用户注册    填写注册页面所有信息,点击确定    注册成功
2    用户登陆    填写注册时用户名和密码:guanyu,123456.点击登录    登陆成功
        填写用户名guanyu,密码124    提示“登陆失败,请联系管理员”
        填写用户名guan,密码123456    提示“登陆失败,请联系管理员”
        填写用户名guan,密码124    提示“登陆失败,请联系管理员”
3    个人信息修改    电话号码输入非11位数字    提示“输入的手机号有误”
        电话号码输入11位数字    修改成功
4    管理员登录    填写正确的用户名,密码    登陆成功
5    用户管理    管理员在后台登录,点击用户管理    展示用户管理列表
        添加管理员    添加管理员
        管理员列表    修改、删除管理员信息
        注册用户管理    删除用户信息
由于篇幅原因,各个功能模块测试用例分析不一一赘述,以用户注册功能模块、个人信息修改模块和评价模块为例进行描述,测试用例分析表如表6-2,6-3所示。
表6-2 用户注册模块测试表
步骤    操作描述    数据    测试结果
1    不输入用户名,按确定按钮    全部信息为空    系统提示“用户名,密码不能为空”
2    输入用户名,不输入密码    用户名:guanyu,密码、电话、地址为空    系统提示“用户名,密码不能为空”
3    输入用户名、密码    用户名:guanyu,密码:123,电话、地址为空    系统提示“您的手机号输入有误”
4    输入用户名,密码,格式错误的手机号    用户名:guanyu,密码:123,电话:1786515397    系统提示“您的手机号输入有误”
5    输入用户名,密码,格式正确的手机号    用户名:guanyu;密码:123,电话:17865153976    系统提示“注册成功”

表6-3 个人信息修改模块测试表
步骤    操作描述    数据    测试结果
1    输入格式错误的手机号,密码和地址    输入密码:123,地址:XXX,电话:1234567890    系统提示“您的手机号输入有误”
2    输入格式正确的手机号,密码和地址    输入密码:123,地址:XXX,电话:12345678901    系统提示“修改成功”
3    输入地址和格式正确的手机号,不输入密码    输入地址:XXX,电话:12345678901    系统提示“密码不能为空”
4    输入密码和格式正确的手机号,不输入地址    输入密码:123,电话:12345678901    系统提示“地址不能为空”
5    输入密码和地址,不输入手机号    输入密码:123,地址:XXX    系统提示“您的手机号输入有误”

6.4  测试结果
表6-1功能模块测试用例设计表的预期结果与表6-2、6-3功能模块测试结果均相符,系统模块功能均完善,在注册登录模块,对于用户填写的错误信息系统会做出提示,符合需求分析阶段的要求。
经过不断测试修改,周口公交查询系统已基本实现预期功能。系统实现了用户管理,车次管理,公交车管理,公交站点管理,线路类型管理,公交线路管理,友情链接管理,留言板,系统管理,我的信息等功能。


第7章  总结与展望
7.1  总结
随着时代的发展,公交查询管理也爆发出了强大的潜力,人们对于快捷高效的追求愈演愈烈,而传统管理方式显然不再适用快节奏的今天,公交查询管理迫切希望出现一个工具,来帮助公交查询的高效管理。本文系统性的论述了周口公交查询系统的研究与设计的过程,其主要的内容如下所示:
1.系统性的分析了周口公交查询系统的研究背景和国内外的研究现状,简单性的介绍了该系统的理论意义和实践意义;
2.简单介绍了实现的相关技术,包括:PHP技术、MySQL数据库、B/S模式等技术;
3.从用户需求方面对系统的功能需求进行了分析;
4.对系统的功能做了详细的设计,并加以实现;
5.对系统做了大量的测试,并对存在的问题加以修改完善。
最终实现了基于PHP的周口公交查询系统的成功运行,系统内实现了公交查询管理的全部功能,能够满足人们对于高效便捷的需求,可以成为人们身边的好助手,同时也增加了一种高效的管理途径。
7.2  展望
由于第一进行较全面的系统开发,且期间还有面临毕业实习等因素耽误时间,在本身能力就不够的情况下,系统的基本功能虽然能够正常运行,但是仍然需要进一步更改和优化:
1.系统的安全性还需进一步改善,来保证系统用户的信息的安全;
2.系统的美工方面还需要加强。
通过这个毕业设计,使我对手机应用软件的开发以及PHP语言和MySQL数据库有了更深刻的学习和理解,在系统开发的过程中,我针对基于PHP的周口公交查询系统的开发进行了更深入的研究,我相信,不管是在以后的学习还是在生活当中,此次的学习经历都会使我受益匪浅,此次毕业设计实践也会为我以后的工作打下良好的基础。


参考文献
[1] 张鑫, 于涌. Web 前端技术开发的优化与研究[J]. 产业与科技论坛, 2018, 17(24): 55-56.
[2]田娟.PHP+MySQL动态网站开发课程教学改革实践探究[J].电脑知识与技术,2023,19(11):156-158.
[3]熊辉. PHP技术与MYSQL数据库技术的Web动态网页设计[J]. 信息记录材料, 2021, 22(01): 115-116.
[4]王丹丹. PHP网站安全及加密技术对策[J].无线互联科技, 2020, 17(23): 28-29.
[5]刘晓知. 论如何应对基于PHP技术开发的Web应用程序漏洞[J]. 电脑编程技巧与维护, 2020, (10): 167-168+173.
[6]李本伍. 基于PHP的移动网站设计与实现[J]. 数码世界, 2018(12): 275-276.
[7]陈欣. Linux系统下Apache服务器的配置与研究[J]. 无线互联科技, 2020(11): 69+121.
[8]朱真真,王柯梦. php在动态网站开发中的优势与具体应用分析[C].广东省教师继续教育学会.广东省教师继续教育学会第六届教学研讨会论文集(一),2023:2036-2038.
[9] 李川. 基于设计模式的软件开发方法[J]. 电子技术与软件工程, 2018(04): 37.
[10]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.
[11]Márta Hock. Php Programming Database Layers[M]. Tritech Digital Media: 2018-08-23.
[12]David Macleod. Introduction To Php Xml And Web Services[M]. Tritech Digital Media: 2018-08-23.


致    谢
随着周口公交查询系统的完成和毕业论文终稿的完成,我猛然间的感觉到空气中都弥漫着毕业那种让人不舍的味道,我们马上就要用自己手中的彩画笔为自己最绚丽也是最难忘的四年大学时光画上一个圆满的句号。但是,大学生活的结束却又意味着我们人生的下一段征程的开始。面对我们人生中的每一个阶段的结束,我们总是难以用最简单的语言表达出这个时刻我们内心最真的感觉。
首先,我想特别感谢我的指导老师。在我做毕业设计和写论文的过程中,总是离不开指导老师的身影。老师认真负责、严谨求实的态度十分令人敬佩。每一次我有问题的时候,联系老师,老师都会及时给与我解答,任何的麻烦感觉到了老师这里都轻而易举的被解决掉。老师给与我的建议和意见都使我茅塞顿开,获益匪浅。值此论文定稿之时,我真心的想向我的指导老师表达我心中最最衷心的感谢和最最崇高的敬意。其次,我想要感谢信息学院的全体老师。大学四年的时光里,没有他们的付出我不会有这样大的进步。没有老师们的认真授课,我不会获得这样多的知识与见识。四年里,我给所有的老师添过各种大大小小的麻烦,谢谢老师们不计前嫌,一如既往的无私的帮助。谢谢您!
古人曾说:良师益友利于行。良师和益友都是我们人生中不可缺少的一部分,是我们成长的路上最最宝贵的一大笔财富,所以最后的最后我想感谢这群可爱的同学们。四年时光,说短不短,然而说长不长,但是我仍记得我们一起上过的课,一起吐过的槽,一起吵过的架,一起参加过的比赛,一起晒过的太阳,还有一起吃过的食堂。我们谁也没有辜负这段时光,没有浪费这段光阴,真好!虽然即将分别,再也吃不到那难吃却又便宜的食堂了,再也住不到这么便宜的宿舍,再也不能一起顶着烈日站军姿的时光了,再也没有上课躲着老师偷偷睡过的课了,再也没有。可是,你们的样子却深深地印刻在我的脑海里,虽然以后我们可能山高水长,但是我相信我依然会记得你那阳光般灿烂的容颜和烈日般灿烂的笑容。愿我们一切都好!
由于自己的水平还是非常有限的,毕业设计以及本篇论文完成的可能差强人意,欢迎各位老师提出意见,给予帮助和指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值