(附源码)PHP图书馆座位预约小程序-计算机毕设 19894

PHP图书馆座位预约小程序

摘 要

随着电子商务快速发展世界各地区,各个高校对图书馆也起来越重视图书馆代表着一间学校或者地区的文化标志,因为图书馆丰富的图书资源能够带给我们重要的信息资源,图书馆管理系统是学校管理机制重要的一环,面对这一世界性的新动向和新问题,图书馆如何适应新的时代和新的潮流,开展有效的信息服务工作,完成时代赋予的新使命?本文就这一问题谈谈几点粗浅的看法,扩大业务范围,更新服务内容,信息社会的到来已经向图书馆传统的服务方式提出了新的挑战;图书馆已经不是,也不可能是传统观念的图书馆,而将成为社会公用信息,本系统包含了2个用户,即管理员和普通用户。

管理员权限主要实现了管理员服务端:首页、系统用户、座位分类管理、座位信息管理、预约信息管理、座位签到管理、座位签退管理、图书馆所管理、系统管理、通知公告管理、资源管理等功能模块,用户微信端:首页、座位信息、图书馆所、座位预约、新闻资讯、我的(基本信息、收藏、预约信息、座位签到、座位签退)等功能,基本上实现了整个图书馆座位预约小程序信息管理的过程。本系统在一般图书馆座位预约的基础上增加了最新信息的功能方便用户快速浏览,是一个高效的、动态的、相互友好的图书馆座位预约小程序。

关键词:图书馆座位预约小程序;Thinkphp框架;微信小程序

PHP Library Seat Reservation Mini Program

Abstract

With the rapid development of e-commerce in various regions of the world, universities are paying more and more attention to libraries. Libraries represent the cultural symbol of a school or region, because the rich book resources of libraries can bring us important information resources. The library management system is an important part of the school management mechanism. Faced with this new global trend and problem, how can libraries adapt to the new era and trend, Carry out effective information service work and complete the new mission entrusted by the times? This article discusses several superficial views on this issue, expanding the scope of business, updating service content, and the arrival of the information society has posed new challenges to the traditional service methods of libraries; The library is no longer, and cannot be, a traditional concept of library, but will become a public information of society. This system includes two users, namely administrators and ordinary users.

The administrator permissions mainly implement functional modules on the administrator server, including homepage, system users, seat classification management, seat information management, reservation information management, seat check-in management, seat check-out management, library management, system management, notification and announcement management, and resource management. The user WeChat end includes homepage, seat information, library information, seat reservation, and news information My functions such as basic information, favorites, appointment information, seat check-in, and seat check-out have basically realized the process of information management for the entire library seat reservation mini program. This system adds the latest information function on the basis of general library seat reservation, making it convenient for users to browse quickly. It is an efficient, dynamic, and mutually friendly library seat reservation mini program.

Keywords: Library seat reservation mini program; Thinkphp framework;

目  录

一、 绪论

(一) 研究背景

(二) 课题意义

二、 开发工具及相关技术介绍

(一) PHP开发语言

(二) JavaScript脚本语言

(三) Mysql数据库

(四) AJAX技术

(五) Thinkphp框架介绍

(六) 微信开发者工具

三、 系统分析

(一) 可行性分析

1. 经济可行性

2. 技术可行性

3. 操作可行性

(二) 功能性需求分析

(三) 非功能性需求分析

(四) 业务流程分析

四、 系统设计

(一) 功能模块设计

(二) 数据库设计

1. 概念模型设计

2. 数据库表设计

五、 系统实现

(一) 用户登录的实现

(二) 系统前台主要功能实现

1. 首页的实现

2. 用户注册的实现

3. 图书馆所的实现

4. 座位信息列表的实现

5. 预约选座的实现

(三) 系统后台主要功能实现

1. 系统用户管理的实现

2. 座位信息管理的实现

3. 预约信息管理的实现

4. 图书馆所管理的实现

六、 系统测试

(一) 系统可靠性测试

(二) 系统功能性测试

(三) 系统合格性测试

(四) 测试结果

七、 总结与展望

参考文献

致谢

  • 研究背景

随着网络时代的到来,互联网的优势和普及时刻影响并改变着人们的生活方式。在信息技术迅速发展的今天,计算机技术已经遍及全球,使社会发生了巨大的变革。

为了不受时间和地点的限制,智能手机用户可以通过移动网络访问网站和处理各种业务和互联网,这是一个有效的将应用系统的功能扩展到手机终端的方法。现今各种智能手机层出不穷,各类基于手机平台的软件应运而生,其中,在众多交流软件中,小程序备受人们青睐。近年来,小程序发展规模越来越大,越来越多的人开始使用小程序,目前随着智能手机系统的普及,人人手机上基本都有了小程序。

所以,小程序推出图书支持公众号关注,而这就意味着小程序跟公众号之间的通道被彻底打通了。本论文图书馆座位预约小程序主要牵扯到的程序,数据库与计算机技术等。覆盖知识面大,可以大大的提高系统人员工作效率。

  • 课题意义

社会主义进入新时代,经济实力越来越强。我们也变得越来越忙碌、对生活的要求也变得更加严格,对快速和方便的服务的需求也在逐渐增加。因此,对图书馆的管理、服务的要求也越来越严格。为适应时代的发展,图书馆座位预约开始广泛地使用电脑来进行管理,并推出相应微信小程序。

于此同时,实现座位预约微信小程序也是顺应时代潮流的举措,现如今教育类型正逐渐增加,浩繁的信息令学校,教育企业,图书馆等机构迎来管理上的难题。在这一客观需要的推动下,建立、完善、发展座位预约微信小程序,可以为管理员带来极大的方便。本系统即为方便管理员和用户而制作的图书馆座位预约微信小程序,结合了用户的需求,设计出的一个基于PHP的图书馆座位预约微信小程序。

  • 开发工具及相关技术介绍

PHP是一种面向对象的程序设计语言,类是PHP程序的基本组成单元,类中又包含了属性和方法,在类中又可以创建无数个对象。类中包含的主要成员是字段和方法,字段是指一种数据变量,方法是指对字段进行操作的集合,包括给其他变量赋值、调用方法等。PHP代码都是编写在类体中,类体中的每个数据项都可以看作是一个对象,PHP不支持类的多重继承,但可以支持接口的多重继承,并且支持类和接口的实现。由于PHP通常在网络环境中使用,所以PHP提供了一个防止代码恶意攻击的安全机制,同时,PHP具有强类型机制、自动收集垃圾和异常处理等特性,这些都是PHP语言健壮性的重要保证。

1、PHP语言具有如下特点:

(1)PHP 结合 C、Java、Perl 以及自创的新语法形成了自己独特的语法。

(2)PHP可以更快速的执行动态网页,当然这只是相对于CGI或者Perl来说,PHP可以在HTML文档中嵌入程序,而且去执行,另外PHP能够实现CGI的所有功能,因此说明PHP具有很强大的功能。

(3)大部分当下流行的数据库和操作系统PHP语言都能够支持。

(4)PHP语言的最重要特点就是可以让C、C++进行扩展

2、PHP语言具有如下优势:

(1)开放源代码:事实上PHP的所有源代码都可以得到。

(2)免费性:PHP是开源代码并且免费

(3)快捷性:PHP对于初学者来说,它不止编辑简单可以嵌入与HTML语言中,而且对于程序开发和运行也是非常快速的,并且非常容易掌握。

(4)跨平台性强:PHP是可以在服务器运行的脚本语言,所以在UNIX、Android、Mac OS、WINDOWS等操作平台上都可以运行。

(5)效率高:PHP对系统资源的消耗相当少,所以它的效率高。

(6)图像处理:PHP不止是可以使用GD2对图像进行处理,而且他还可以完成对图像的创建。

(7)面向对象:php4、php5对于PHP在面向对象上,有了许多的改进,PHP语言开发大型商业程序也是可以胜任的。

  • JavaScript脚本语言

此作品中,其中包含了页面的搭建,以及前后台数据接口的连接等,而对于实现用户页面交互以及一些页面逻辑性判断等功能都是用JavaScript完成的[7],而JavaScript是已经被广泛用于Web应用开发,是一种属于网络的脚本语言,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能。JavaScript作为一种描述语言,作用于web前端,它基于对象(object)和事件驱动(Event Driven)并且安全性也较好。它可以有效的在客户端运行并为服务器减轻负担。

1、JavaScript具有的特点:

(1)脚本语言。JavaScript是一种脚本语言并具有解释性,在程序运行过程中,它就可以进行解释。

(2)基于对象。JavaScript可以创建对象,而且还可以使用现在存在的对象,它是基于对象的脚本语言。

(3)简单。JavaScript不对使用的数据类型有着严格的要求,应用的是弱类型的变量类型,设计是十分紧凑简单。

(4)动态性。JavaScript是可以不经过Web服务器对用户的操作做出相应,是可以采用事件驱动的脚本语言。

(5)跨平台性。JavaScript可以不依赖操作系统,但需要浏览器的支持。所以在编写JavaScript脚本后可以在任意机器上使用,但要注意的一点,使用的浏览器是支持JavaScript脚本语言,现在大多浏览器也支持JavaScript。

2、JavaScript的用途

JavaScript的用途是解决页面交互和数据交互,最终目的是丰富客户端效果以及数据的有效传递。

(1)实现页面交互,提升用户体验实现页面特效。即js操作html的dom节构或操作样式。

(2)客户端表单验证。当数据传送到服务端前,可以将用户填入并上交的信息快速有效的验证,进行了数据的交互,为服务器减轻了负担。

  • Mysql数据库

Mysql Database,通常简称为Mysql,是一款关系型数据库的管理系统。Mysql数据库系统是目前最流行的关系型数据库管理系统之一,其系统具有良好的可移植性,功能强大且使用十分方便。Mysql支持很多系统和硬件,包括HP-UX,Linux,MicrosoftWindows,SunSolaris,AppleMac等。

Mysql系统的特点:

(1)Mysql的多线索服务器的体系结构使其只利用很少的资源就能够支持多用户的、大数据的高性能事务处理;

(2)Mysql支持大量的多媒体数据,例如声音、动画、二进制图形和多维数据结构等;

(3)Mysql提供了安全保密管理系统,具有良好的安全性、一致性和完整性;

(4)具有新的分布式数据库能力和分布处理的能力;

(5)提供了一些高级语言的接口软件,可以帮助快速开发基于客户端的应用程序,具有良好的移植性、可连结性和可兼容性。

Mysql数据库逻辑结构包含表空间(tablespace)、段(segment)、范围(extend)、数据块(datablock)、和模式对象(schemaobject) 。每一个数据库都可以逻辑划分为一个或多个表空间,每一个表空间都是由一个或多个数据文件来组成。Mysql数据库分为系统表空间和非系统表空间,每一个Mysql数据库都包含一个称作SYSTEM的系统表空间。

  • AJAX技术

AJAX是创建交互式网页的一种开发技术,利用AJAX技术可以实现以无刷新网页的方式更新HTML元素中的内容。传统的网页如果要更新网页内容,必须重新加载整个页面,而AJAX使用异步数据传输在网页和Web服务器之前传递HTTP请求,这样可以使网页只请求少量信息,而不用刷新整个页面。           

  • Thinkphp框架介绍

ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。 

ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。

ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

作为一个整体开发解决方案,ThinkPHP能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。

  • 微信开发者工具

微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。

机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。

预览界面:写好视图布局后点击编译,用来刷新视图界面。

控制台:方便调试打印输出信息。

上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。

资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。

显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用的。

本地数据存储:显示的是本地存储的数据。

视图调试:标组件以子父层级结构呈现,方便调试。 

  • 系统分析

本系统将在经济、技术、操作这三个角度上进行可行性分析。

  1. 经济可行性

整个系统从设计到开发以及测试过程严谨步骤齐全,所有工作任务全部由本人完成,并未获取外部技术支持,节约了一切服务成本开销以及人工成本,在硬件方面,为节约成本使用一台二手移动工作站作为项目部署服务器以及数据库服务器,成本在一万元一下,真个网络部署也是由本人独立完成不涉及到其他人工费用,整个开发过程本着低成本,低消耗的原则。

  1. 技术可行性

技术可行性分析的目的是确认该系统能否利用现有技术实现,并评估开发效率和完成情况。技术的可行性是指在当前的技术条件下,计算机软件和硬件的开发是否能够满足发展的要求。因为该系统的开发基于PHP语言,所以开发该系统所需的软件和硬件条件可以在普通计算机上满足。因为它占用的内存相对较少,所以用Mysql数据库开发和设计软件理论上没有问题,因为它占用的内存太少。上述技术可以有效地保证系统的成功和高效开发。

  1. 操作可行性

图书馆座位预约小程序的使用界面简单易于操作,采用常见的界面窗口来登录界面,通过电脑进行访问操作,用户只要平时使用过电脑都能进行访问操作。此系统的开发采用PHP技术开发,人性化和完善化是B/S结构开发比较显要的特点使得用户操作相比较其他更加简洁方便。易操作、易管理、交互性好在本系统操作上体现得淋漓尽致。

  • 功能性需求分析

前台需求:

(1)用户模块:主要包括用户的注册和登陆、用户个人信息管理等功能。

(2)新闻资讯模块:主要包括新闻资讯的浏览、展示、搜索等功能。

(3)图书馆所展示模块:主要包括各个图书馆所图片、地址、开放时间等信息展示,便于用户进行查看、了解图书馆所详细信息。

(4)座位信息模块:主要包括图书馆座位名称、座位类型、座位图片、区域、可用数量、占用情况等详细信息,方便用户查看和预约操作。

(5)预约信息模块:主要查看自己预约的详细信息,用户可进行详情和签到操作。

(6)座位签退模块:方便用户在结束离开图书馆时进行签退操作。

(6)网站公告模块:主要包括前台公告的展示以及查看。

(7)基本信息模块:主要可以查询用户的个人资料信息并进行修改操作。

(8)收藏模块:主要查看用户自己收藏的信息并可进行删除等操作。

后台需求:

(1)用户管理:主要包括用户列表、用户状态管理等功能。

(2)座位信息管理:主要包括座位名称、座位类型、开放时间、座位区域、可用数量、座位图片等信息的管理,可进行增删改查操作。

(3)预约信息管理:主要查看前台用户座位预约的申请详细信息并进行审核回复操作。

(4)座位签到管理:主要查看前台用户的签到信息进行详情查看、删除等操作。

(5)座位签退管理:主要查看前台用户的签退信息进行详情查看、删除等操作。

(6)图书馆所管理:主要包括图书馆名、所在地址、开放时间、图书馆封面、藏书数量、座位数量、图书馆简介等信息的管理,可进行增删改查操作。。

(7)系统管理:对前台展示的轮播图可进行增删改查操作。

(8)通知公告管理:对公告信息可以进行增删改查操作。

(9)资源管理:对系统的新闻资讯以及所属分类进行管理。

用户用例图如下所示。

图1 用户用例图

管理员用例图如下所示。

图2 管理员用例图

座位信息添加用例描述如下表所示。

表1座位信息添加用例描述

用例名称

添加座位信息

参与者

管理员

用例概述

本用例用于管理员进行添加新座位信息操作

前置条件

管理员添加新座位信息前必须登录系统

后置条件

系统中添加一个新座位信息

基本事件流

参与者动作

系统响应

  1. 管理员在后台主界面选择“新座位”。

4、管理员填写新座位信息,点击“添加”按钮。

2、系统打开添加新座位界面。

3、系统检查管理员输入的座位信息是正确有效的。

5、系统将座位信息添加到数据库中。

6、系统提示“操作成功”。

7、系统跳转到座位信息管理界面。

其他事件流

1、系统验证管理员输入的座位名为空,则提示“*请填写座位名称!”。

2、系统验证管理员输入的座位号不是数字格式,则提示“*座位必须是数字格式!”

新闻资讯添加用例描述如下表所示。

表2新闻资讯添加用例描述

用例名称

添加新闻资讯

参与者

管理员

用例概述

本用例用于管理员进行添加新闻资讯操作

前置条件

管理员添加新闻资讯前必须登录系统

后置条件

系统中添加一个新闻资讯

基本事件流

参与者动作

系统响应

1、管理员在后台主界面选择“资源管理”。

4、管理员选择一个新闻资讯,点击“添加”按钮。

6、管理员点击“确定”按钮。

2、系统从数据库中获取新闻资讯信息列表

3、系统打开健身新闻资讯列表界面。

5、系统提示“你确定要添加吗?”。

7、系统将新闻资讯从数据库中添加。

8、系统提示“添加成功”。

9、系统跳转到资源管理界面。

其他事件流

用户编辑用例描述如下表所示。

表3用户编辑用例描述

用例名称

修改用户

参与者

管理员

用例概述

本用例用于管理员进行修改用户信息操作

前置条件

管理员已经登录系统

后置条件

系统中更新一条用户记录

基本事件流

参与者动作

系统响应

1、管理员在后台主界面选择“用户管理”。

4、管理员在用户列表中选择一个用户,点击“编辑”按钮。

6、管理员填写用户信息,点击“保存修改”按钮。

2、系统从数据库中获取用户信息。

3、系统打开用户列表界面。

5、系统打开修改用户信息界面。

7、系统将更改后的添加到数据库中。

8、系统提示“操作成功”。

9、系统跳转到用户管理界面。

其他事件流

座位预约用例描述如下表所示。

表4座位预约用例描述

用例名称

座位预约

参与者

用户

用例概述

本用例用于用户进行对座位预约操作

前置条件

用户已经登录系统

后置条件

系统中增加一条用户座位预约记录

基本事件流

参与者动作

系统响应

1、用户在前台首页选择任意一个输入图书馆所。

4、管理员在用户列表中选择一个图书馆所。

7、用户填写预约信息,点击“预约”按钮。

2、系统从数据库中获取预约列表信息。

3、系统打开预约列表界面。

5、系统从数据库中获取预约信息。

6、系统打开预约信息及签到界面。

8、系统检查用户输入的信息是正确有效的。

9、系统将预约记录添加到数据库中。

其他事件流

1、系统验证用户输入的字段为空,则提示“*预约数量不能为空!”。

  • 非功能性需求分析 

随着用户量的增加,系统可能会需要同时服务上千、上万个页面,服务器需要同时响应大量用户的操作,这就要求系统需要有良好的可扩展性,否则系统会出现延迟,卡顿甚至服务器崩溃的问题。高扩展性可以使软件保持旺盛的生命力,同时也能够使系统更好的适应用户增加、提高性能需求、增加应用功能等改变。

系统中保存了大量用户和管理员的个人信息,因此,保证系统服务器和数据安全是在开发过程中需要考虑的重要问题。安全性包括服务器安全、操作系统安全、数据库安全、程序代码安全以及用户个人信息和支付安全等,系统可以通过采用防火墙技术、加密技术、认证技术等来增强其安全性,只有一个健壮安全的系统才能具有长久的生命力。

  • 业务流程分析

图书馆座位预约小程序的前台中,用户模块和座位信息模块进行数据交互,实现预约的功能。前台的功能主要包括座位信息模块、图书馆所模块、预约信息模块、座位签到模块、座位签退模块等功能模块。

图书馆座位预约小程序的后台中,管理员对用户在前台提交申请产生的数据进行处理,以满足用户的需求。前台系统和后台系统有数据交互,整个系统各个部分相互独立又密不可分。后台的功能主要包括用户管理、座位信息管理、图书馆所管理、预约信息管理、座位签到管理、座位签退管理、系统管理、通知公告管理、资源管理等功能模块。

  • 系统设计
  • 功能模块设计

通过软件的需求分析已经获得了系统的基本功能需求。根据各大功能模块的不同,将系统分为各种功能大块。系统功能结构如下图所示。

图4系统功能结构图

注册/登录

游客(未进行注册或登陆的用户)可以浏览、搜索座位信息,但不能进行收藏和预约。用户注册首先需要进行表单验证,来验证账号和密码是否合法,然后验证账号是否已经存在,验证通过即可注册。

注册成功后,用户可以通过输入用户名来登录系统,输入密码后进行验证。登录成功后,用户可以使用图书馆座位预约小程序进行查看图书馆所信息、查看座位信息并预约、进行座位签到和签退操作等功能。

基本资料管理

用户登录系统后,在账户设置中,可以修改昵称、头像、登陆密码等个人基本信息。

新闻资讯搜索

系统首页展示了新闻资讯搜索输入框,用户在输入框内输入与新闻资讯标题相关的关键字,系统通过模糊查询搜索到用户需要的新闻资讯并展示。

座位信息展示

用户在浏览图书馆座位信息时,点击某一个座位,跳转到该图书馆的座位信息展示页。在座位信息页面展示了座位的具体信息,比如名称,图片、楼层等信息,用户通过浏览信息了解座位的具体信息,最终决定是否预约。

座位预约

在座位信息页面,用户可以通过点击“预约”进行预约座位,点击后跳转到预约页面。预约页面会展示预约信息,如:预约时间、预约数量等信息,用户确认后信息无误点击“提交”后台则预约成功。

座位信息列表

管理员可以在“座位信息列表”中展示座位信息,包含座位名称、座位类型、座位图片、座位数量等具体信息。管理员可以对座位信息进行管理维护。

  • 数据库设计
  1. 概念模型设计

概念设计包括实体和联系两部分,如该系统中,用户是一个实体,其属性包括用户 ID 标识、用户名、密码、电话、身份等属性。联系是指实体之间有意义的关联,包括一对一、一对多、多对多三种类型。

系统E-R图如下所示。

图5系统E-R图

在图中,用户购买产品,关系为1:N,管理员管理产品信息,关系为1:N,用户和订单的关系为1:N。

  1. 数据库表设计

数据库表是设计和实现系统的一个重要基础。以下列出了图书馆座位预约小程序几个重要的数据库表。

表appointment_information (预约信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

appointment_information_id

int

10

0

N

Y

预约信息ID

2

seat_name

varchar

64

0

Y

N

座位名称

3

seat_type

varchar

64

0

Y

N

座位类型

4

opening_hours

varchar

64

0

Y

N

开放时间

5

seat_floor

varchar

64

0

Y

N

座位楼层

6

seating_area

varchar

64

0

Y

N

座位区域

7

appointment_users

int

10

0

Y

N

0

预约用户

8

user_name

varchar

64

0

Y

N

用户姓名

9

appointment_quantity

int

10

0

Y

N

0

预约数量

10

appointment_time

datetime

19

0

Y

N

预约时间

11

appointment_instructions

text

65535

0

Y

N

预约说明

12

examine_state

varchar

16

0

N

N

未审核

审核状态

13

examine_reply

varchar

16

0

Y

N

审核回复

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表article (文章:用于内容管理系统的文章)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

标题:[0,125]用于文章和html的title标签中

3

type

varchar

64

0

N

N

0

文章分类:[0,1000]用来搜索指定类型的文章

4

hits

int

10

0

N

N

0

点击数:[0,1000000000]访问这篇文章的人次

5

praise_len

int

10

0

N

N

0

点赞数

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

8

source

varchar

255

0

Y

N

来源:[0,255]文章的出处

9

url

varchar

255

0

Y

N

来源地址:[0,255]用于跳转到发布该文章的网站

10

tag

varchar

255

0

Y

N

标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开

11

content

longtext

2147483647

0

Y

N

正文:文章的主体内容

12

img

varchar

255

0

Y

N

封面图

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

type_id

smallint

5

0

N

Y

分类ID:[0,10000]

2

display

smallint

5

0

N

N

100

显示顺序:[0,1000]决定分类显示的先后顺序

3

name

varchar

16

0

N

N

分类名称:[2,16]

4

father_id

smallint

5

0

N

N

0

上级分类ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述该分类的作用

6

icon

text

65535

0

Y

N

分类图标:

7

url

varchar

255

0

Y

N

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表auth (用户权限管理)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auth_id

int

10

0

N

Y

授权ID:

2

user_group

varchar

64

0

Y

N

用户组:

3

mod_name

varchar

64

0

Y

N

模块名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

页面标题:

6

path

varchar

255

0

Y

N

路由路径:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳转方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可删除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查询字段:

16

table_nav_name

varchar

500

0

Y

N

跨表导航名称:

17

table_nav

varchar

500

0

Y

N

跨表导航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表collect (收藏)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

来源表:

4

source_field

varchar

255

0

Y

N

来源字段:

5

source_id

int

10

0

N

N

0

来源ID:

6

title

varchar

255

0

Y

N

标题:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表hits (用户点击)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

hits_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

表library (图书馆所)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

library_id

int

10

0

N

Y

图书馆所ID

2

library_name

varchar

64

0

Y

N

图书馆名

3

address

varchar

64

0

Y

N

所在地址

4

opening_hours

varchar

64

0

Y

N

开放时间

5

library_cover

varchar

255

0

Y

N

图书馆封面

6

number_of_books_in_collection

varchar

64

0

Y

N

藏书数量

7

number_of_seats

varchar

64

0

Y

N

座位数量

8

introduction_to_the_library

text

65535

0

Y

N

图书馆介绍

9

library_situation

text

65535

0

Y

N

图书馆情况

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

点赞状态:1为点赞,0已取消

表regular_users (普通用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

regular_users_id

int

10

0

N

Y

普通用户ID

2

user_name

varchar

64

0

Y

N

用户姓名

3

user_gender

varchar

64

0

Y

N

用户性别

4

examine_state

varchar

16

0

N

N

已通过

审核状态

5

user_id

int

10

0

N

N

0

用户ID

6

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表seat_check_in (座位签到)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

seat_check_in_id

int

10

0

N

Y

座位签到ID

2

seat_name

varchar

64

0

Y

N

座位名称

3

seat_type

varchar

64

0

Y

N

座位类型

4

opening_hours

varchar

64

0

Y

N

开放时间

5

seat_floor

varchar

64

0

Y

N

座位楼层

6

seating_area

varchar

64

0

Y

N

座位区域

7

appointment_users

int

10

0

Y

N

0

预约用户

8

user_name

varchar

64

0

Y

N

用户姓名

9

appointment_quantity

int

10

0

Y

N

0

预约数量

10

appointment_time

datetime

19

0

Y

N

预约时间

11

sign_in_time

datetime

19

0

Y

N

签到时间

12

sign_in_instructions

text

65535

0

Y

N

签到说明

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表seat_check_out (座位签退)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

seat_check_out_id

int

10

0

N

Y

座位签退ID

2

seat_name

varchar

64

0

Y

N

座位名称

3

seat_type

varchar

64

0

Y

N

座位类型

4

opening_hours

varchar

64

0

Y

N

开放时间

5

seat_floor

varchar

64

0

Y

N

座位楼层

6

seating_area

varchar

64

0

Y

N

座位区域

7

appointment_users

int

10

0

Y

N

0

预约用户

8

user_name

varchar

64

0

Y

N

用户姓名

9

appointment_quantity

int

10

0

Y

N

0

预约数量

10

sign_in_time

datetime

19

0

Y

N

签到时间

11

sign_out_time

datetime

19

0

Y

N

签退时间

12

sign_out_instructions

text

65535

0

Y

N

签退说明

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表seat_classification (座位分类)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

seat_classification_id

int

10

0

N

Y

座位分类ID

2

seat_type

varchar

64

0

Y

N

座位类型

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表seat_information (座位信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

seat_information_id

int

10

0

N

Y

座位信息ID

2

seat_name

varchar

64

0

Y

N

座位名称

3

seat_type

varchar

64

0

Y

N

座位类型

4

opening_hours

varchar

64

0

Y

N

开放时间

5

seat_image

varchar

255

0

Y

N

座位图片

6

seat_floor

varchar

64

0

Y

N

座位楼层

7

seating_area

varchar

64

0

Y

N

座位区域

8

available_quantity

int

10

0

Y

N

0

可用数量

9

location_distribution

text

65535

0

Y

N

位置分布

10

occupation_situation

text

65535

0

Y

N

占用情况

11

seat_information

text

65535

0

Y

N

座位信息

12

hits

int

10

0

N

N

0

点击数

13

praise_len

int

10

0

N

N

0

点赞数

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

  • 系统实现
  • 用户登录的实现

用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。

登陆拦截管理器,在config文件夹下的WebAppConfig.java文件,代码如下:

return [

    // 数据库类型

    'type'            => 'mysql',

    // 服务器地址

    'hostname'        => '127.0.0.1',

    // 数据库名

    'database'        => 'CS85950_20211206165410',

    // 用户名

    'username'        => 'root',

    // 密码

    'password'        => 'root',

    // 端口

    'hostport'        => '3306',

    // 连接dsn

    'dsn'             => '',

    // 数据库连接参数

    'params'          => [],

    // 数据库编码默认采用utf8

    'charset'         => 'utf8',

    // 数据库表前缀

    'prefix'          => '',

    // 数据库调试模式

    'debug'           => true,

    // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)

    'deploy'          => 0,

    // 数据库读写是否分离 主从式有效

    'rw_separate'     => false,

    // 读写分离后 主服务器数量

    'master_num'      => 1,

    // 指定从服务器序号

    'slave_no'        => '',

    // 自动读取主库数据

    'read_master'     => false,

    // 是否严格检查字段是否存在

    'fields_strict'   => true,

    // 数据集返回类型

    'resultset_type'  => 'array',

    // 自动写入时间戳字段

    'auto_timestamp'  => true,

    // 时间字段取出后的默认时间格式

    'datetime_format' => 'Y-m-d H:i:s',

    // 是否需要进行SQL性能分析

    'sql_explain'     => false,

    // Builder类

    'builder'         => '',

    // Query类

    'query'           => '\\think\\db\\Query',

    // 是否需要断线重连

    'break_reconnect' => false,

    // 断线标识字符串

    'break_match_str' => [],

];

登录界面如下图所示。

图5-1登录界面

用户登录的关键代码如下。

public function login()

    {

        if (Request::isPost()) {

            $request = Request::param();

            $result = $this->validate($request, $this->validate);

            if (true !== $result) {

                // 验证失败 输出错误信息

                $data['error'] = 30000;

                $data['message'] = $result;

            } else {

                $request['password'] = md5($request['password']);

                $result = $this->model->login($request, $this->table);

                $data = $result;

            }

        } else {

            $data['error'] = 30000;

            $data['message'] = "field的值不能为空!";

        }

        return json_encode($data);

    }

public function login($request=[],$table_name = ''){

        $username = $request['username'];

        $password = $request['password'];

        $bol = $this->where(['username'=>$username])->find();

        if ($bol){

            $password = md5($password);

            if ($request['password']==$bol['password']) {

                //添加token信息

                $access_token['create_time'] = date('Y-m-d H:i:s');

                $access_token['update_time'] = date('Y-m-d H:i:s');

$access_token['info'] = json_encode($bol);

                // $access_token['info'] = $bol;

                $access_token['token'] = md5(date('Y-m-d H:i:s'));

                $bol_token = Db::name('AccessToken')->insert($access_token);

                if ($bol_token){

                    $data['obj'] = $bol;

                    $data['obj']['token'] = $access_token['token'];

                    return ['result' => $data];

                }else{

                    return ['error' => ['code' => 5000, 'message' => '登录失败,token生成失败']];

                }

            } else {

                return ['error' => ['code' => 5000, 'message' => '登录失败,密码不正确']];

            }

        }else{

            return ['error' => ['code' => 5000, 'message' => '登录失败,账号不存在']];

        }

    }

  • 系统前台主要功能实现 
  1. 首页的实现

用户界面要尽量简洁大方,使用户能够方便找到需要的功能入口,浏览新闻资讯、网站公告、图书馆所、座位信息进行座位预约等,且要易于修改和维护,同时还要保证用户合法和系统安全。

首页界面如下图所示。

图5-2首页界面

  1. 用户注册的实现

用户进入系统首页后,点击“注册”链接进入到注册页面,按照页面提示输入用户名、密码、身份等信息,页面进行表单验证,验证输入的用户名是否合法,表单验证通过后,点击“立即注册”按钮,利用 Ajax 技术,对用户名实现页面无刷新验证,检测数据库中是否已经存在该用户名,若数据库中不存在,则注册成功,注册成功后,自动跳转到登录页面。

用户注册界面如下所示。

图5-3用户注册界面

用户注册逻辑代码如下:

public function register()

    {

        if (Request::isPost()) {

            $request = Request::param();

            $request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('Y-m-d H:i:s');

            $request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('Y-m-d H:i:s');

            $result = $this->validate($request, $this->validate);

            if (true !== $result) {

                // 验证失败 输出错误信息

                $data['error'] = 30000;

                $data['message'] = $result;

            } else {

                $request['password'] = md5($request['password']);

                $result = $this->model->register($request, $this->table);

                $data = $result;

            }

        } else {

            $data['error'] = 30000;

            $data['message'] = "field的值不能为空!";

        }

        return json_encode($data);

    }

public function register($request=[],$table_name = ''){

        $username = $request['username'];

        $bol = $this->where(['username'=>$username])->find();

        if (!$bol){

            $result = self::allowField(true)->save($request);

            if ($result) {

                return ['result' => 1];

            } else {

                return ['error' => ['code' => 3000, 'message' => '注册失败']];

            }

        }else{

            return ['error' => ['code' => 3000, 'message' => '注册失败,账号已存在']];

        }

    }

  1. 图书馆所的实现

系统首页提供了搜索图书馆所信息的输入框,用户在输入框内输入想要查找图书馆所的关键字,点击搜索按钮,系统将用户输入的关键字传递到后台。首先创建一个实体类 PageBean,该实体类的属性包括页码 pageCode、每页记录数 pageSize、总记录数 totalRecord 和一个 List 集合 beanList,用循环将搜索到的结果分页展示。

图书馆所界面如下所示。

图5-4图书馆所界面

  1. 座位信息列表的实现

系统首页提供了搜索座位信息的输入框,用户在输入框内输入想要查找座位信息的关键字,点击搜索按钮,系统将用户输入的关键字传递到后台。首先创建一个实体类 PageBean,该实体类的属性包括页码 pageCode、每页记录数 pageSize、总记录数 totalRecord 和一个 List 集合 beanList,用循环将搜索到的结果分页展示。

座位信息列表界面如下图所示。

图5-5座位信息列表界面

               

  1. 预约选座的实现

用户在浏览座位信息时,对于心仪的想要预约的座位,可以将在座位信息页面点击“预约选座”按钮,页面将该预约信息的数据传递到后台,首先查询数据库预约列表中是否已经存在该预约信息,若存在直接将预约数量加一,若不存在则创建一个新的预约信息,添加预约选座成功,数据库中的预约表添加一条信息。用户还可以点击“预约信息”查看添加到预约列表的座位信息,系统通过读取 session获取到用户 ID,将用户 ID 传递到后台,在预约列表中查询该用户的所有预约信息,返回数据到预约信息页面。

预约选座界面如下图所示。

图5-6预约选座界面

  • 系统后台主要功能实现 
  1. 系统用户管理的实现

管理员对系统用户的管理,在管理员管理实现管理员用户的管理,包括录入、删除、修改,修改密码通过SESSION获取用户名,然后输入新密码,使用sql命令更新密码。

系统用户界面如下图所示。

5-8系统用户管理界面

  1. 座位信息管理的实现

管理员可以获取系统中所有座位信息列表并对其进行编辑。管理员在添加座位信息时,需要输入座位基本信息,如名称、开放时间、类型等,还需要输入座位信息详情描述,包括对座位的展示图片等。添加座位信息完成,数据库座位信息表添加一条信息。管理员可以搜索座位信息,同时可以对已经添加的座位信息进行编辑。

座位信息管理界面如下图所示。

图5-9座位信息管理界面

  1. 预约信息管理的实现

管理员在后台管理界面点击预约信息界面,可以搜索当前所有用户的预约信息,对用户的预约信息进行审核回复并可对预约信息进行删除等操作。

预约信息管理界面如下图所示。

图5-10预约信息管理界面

预约信息审核界面如下图所示。

图5-11预约选座审核界面

  1. 图书馆所管理的实现

管理员可以获取系统中所有图书馆所列表并对其进行编辑。管理员在添加图书馆所时,需要输入图书馆所基本信息,如图书馆名、所在地址、开放时间等,还需要输入图书馆所详情描述,包括对图书馆所的展示图片等。添加图书馆所完成,数据库图书馆所表添加一条信息。管理员可以搜索图书馆所,同时可以对已经添加的图书馆所进行编辑。

图书馆所管理界面如下图所示。

图5-12 图书馆所管理界面

图书馆所添加界面如下图所示。

图5-13 图书馆所添加界面

  • 系统测试
  • 系统可靠性测试

以进入系统首页的访问速度为例展示系统的性能测试;系统的主要用户群体是购物理念较为先进的消费者,系统要在3秒钟内响应;需要完成页面的菜单栏、首页轮播图片、类目及产品信息、产品商城以及各功能模块入口等元素的显示。

  • 系统功能性测试

功能性测试是指执行指定的工作流程,通过对一个系统的所有特性和功能都进行测试确保符合需求和规范。

系统功能性测试表如下表所示。

11系统功能性测试表

编号

测试功能

测试内容

测试结果

1

用户登录

1.验证用户名与密码的正确性。

2.验证密码是否可见。

通过

2

首页展示

1.首页数据是否成功加载。

2.验证搜索功能的准确性。

3.验证是否可以异步加载。

4.验证导航栏按钮。

通过

3

个人信息修改

1.验证登录名是否可以正常更改。

2.验证联系方式是否可以更改。

3.验证收货地址可以正常修改。

4.验证密码是否可以修改。

通过

4

预约信息管理

1.预约信息是否可以成功。

2.验证用户预约信息是否准确。

通过

7

图书馆所管理

1.验证图书馆所新增是否可以成功。

2.验证图书馆所删除是否可以成功。

通过

8

座位信息管理

1.座位信息是否与上传一致。

2.是否能完成名称修改。

3.验证座位信息修改。

通过

9

添加新闻资讯

1.上传新闻资讯是否添加验证。

2.图片是否成功上传。

3.验证表单是否提交成功。

通过

10

用户管理

1.验证用户录入功能。

2.验证用户违规清理功能。

通过

  • 系统合格性测试

集成测试后,所有的模块已经全部连接完毕,形成了一个完整的系统。合格性测试是在集成测试完毕后,进一步对系统进行综合性的检测。经过合格性测试,可以检查出系统是否符合系统的设计,能够完成需求的所有功能。本系统经过最后的测试,所有模块功能都能按预定要求工作。

  • 测试结果

在实际测试中,经过一系列系统性的测试,使我们能够及时发现一些系统在设计中出现的疏忽和漏洞。经过严密的测试,不仅发现了模块内部的错误,也查找到模块连接后产生的错误。经过测试,对系统产生错误的地方进行优化、修改和完善,使得系统能够实现最初设计的基本功能。

  • 总结与展望

本文针对图书馆座位预约小程序的特点和用户需求,利用 PHP相关技术、Thinkphp框架等技术,通过详细的需求分析、页面设计和功能设计,最终实现了一个基于PHP的图书馆座位预约小程序。

系统利用JQuery 技术和 CSS 技术进行了页面设计,实现了包括用户模块、图书馆所模块、座位信息模块、座位签到模块、预约信息模块、座位签退模块的前台系统以及包括用户管理模块、座位信息管理模块、系统管理模块、座位签退管理模块的后台系统。另外,系统还进行了数据安全设计和新闻资讯模块设计,并添加了用户的访问控制,建立了一个完整、健壮、安全稳定的图书馆座位预约小程序。

由于时间限制和本人能力条件有限,还存在一些不足,今后也会出现许多新的开发技术,未来还可以对程序做出如下改进:

(1)优化程序页面,使页面更加美观且方便操作;

(2)优化搜索功能,提供多条件选择查询搜索;

(3)优化推荐功能,提高推荐的精准度;

(4)进一步提高使用程序的安全性,使其更加健壮;

(5)优化数据和代码,提升软件效率,方便维护和扩展。

参考文献

  1. 梁俊. 图书馆座位管理系统《座位管家》的创作研究[D]. 北京印刷学院, 2023.
  2. 叶咏诗, 普布旦增, 刘欣婷, 袁雨琛. 图书馆座位预约平台的设计与实现[J]. 信息与电脑(理论版), 2023, 35 (10): 137-140.
  3. 贺一轩, 秦立静. 基于微信小程序的图书馆座位预定系统的设计[J]. 现代信息科技, 2023, 7 (01): 23-25+29.
  4. Lin Chun, Xu Yijia, Fang Yong, Liu Zhonglin. VulEye: A Novel Graph Neural Network Vulnerability Detection Approach for PHP Application[J]. Applied Sciences, 2023, 13 (2): 825-825.
  5. 张昕, 林洪芳. 基于微信小程序的图书馆座位预约管理系统[J]. 电子元器件与信息技术, 2022, 6 (12): 106-109.
  6. 王杰, 张娓娓, 赵金龙. 基于微信小程序的图书馆座位预约系统的设计与实现[J]. 电脑知识与技术, 2022, 18 (27): 46-47+52.
  7. 潘俊芳, 侯振兴. 基于微信小程序的图书馆座位预约系统的设计[J]. 黑龙江工业学院学报(综合版), 2022, 22 (05): 66-71.
  8. 胡越. 高校图书馆座位预约系统的应用与分析——以F大学为例[J]. 办公室业务, 2022, (09): 87-89+140.
  9. Wu Daiwen. The Application and Management System of Scientific Research Projects Based on PHP and MySQL[J]. Journal of Interconnection Networks, 2022, 22 (Supp02):
  10. Zhao Jiazhen, Lu Yuliang, Zhu Kailong, Chen Zehan, Huang Hui. Cefuzz: An Directed Fuzzing Framework for PHP RCE Vulnerability[J]. Electronics, 2022, 11 (5): 758-758.
  11. 方怡雯, 孔小燕, 颜鲜萍, 杨永霞, 肖寒. 图书馆座位智能管理方案[J]. 电脑知识与技术, 2022, 18 (05): 59-60+63.
  12. 罗志远, 罗晶晶, 王玉银. 基于微服务架构的图书馆座位管理系统[J]. 电脑知识与技术, 2022, 18 (05): 66-67+87.
  13. Kofoed Rikke Hahn, Heinen Stefan, Silburt Joseph, Dubey Sonam, Dibia Chinaza Lilian, Maes Miriam, Simpson Elizabeth M., Hynynen Kullervo, Aubert Isabelle. Transgene distribution and immune response after ultrasound delivery of rAAV9 and PHP.B to the brain in a mouse model of amyloidosis[J]. Molecular Therapy - Methods & Clinical Development, 2021, 23 390-405.
  14. 梁舒. 微信小程序在高职院校图书馆中的应用研究[J]. 安徽职业技术学院学报, 2021, 20 (03): 77-80.
  15. 李文佳, 刘嘉灵, 夏仪, 陈雪. 基于微信小程序的智能图书馆管理系统设计[J]. 数字通信世界, 2021, (09): 86-87+89.
  16. 黄雪峰, 汪羽晴, 王玉莹, 马潇钰. 基于微信小程序的图书馆座位管理系统研究[J]. 中国市场, 2020, (31): 109-110.
  17. 李慧君. 高校图书馆微信选座分析与探讨——以深圳大学图书馆为例[J]. 内蒙古科技与经济, 2020, (10): 85-87+132.
  18. 李昊楠, 刘雅莉. 基于微信小程序的图书馆座位预约系统设计[J]. 现代信息科技, 2020, 4 (06): 4-6.
  19. 陆有丽, 邓凯航, 李雯婧, 谢凌举, 何津葳. 基于微信小程序的图书馆座位预约系统的设计与实现[J]. 湖南理工学院学报(自然科学版), 2020, 33 (01): 29-33.
  20. 张平平, 李侗. 基于移动终端的图书馆使用预约系统分析[J]. 电脑知识与技术, 2020, 16 (01): 68-70.

致谢

时光飞逝,转眼间我在学校的这些年生活即将结束,回顾这几年的学习生活,收获良多,既有幸福也有难过,学校生活的结束对于我来说也是一个新的开始。论文即将完成,在此,我心中有许多想要感谢的人。首先感谢我的导师,不仅在学习研究方面加以指导,也在生活和为人处世上给予帮助。还要感谢授课老师,你们严谨的学术精神和积极向上的工作态度都在激励我的成长和进步。感谢多年来一直生活在一起的室友,谢谢你们多年来的陪伴和照顾。最后,要感谢各位论文评审老师,感谢您们在百忙之中抽空评阅本论文并给出宝贵的意见和建议。

请关注点赞+私信博主,免费领取项目源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值