摘 要
随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,高校当然也不例外。校园协会管理系统是以实际运用为开发背景,运用软件工程原理和开发方法,采用Java技术构建的一个管理系统。整个开发过程首先对软件系统进行需求分析,得出系统的主要功能。接着对系统进行总体设计和详细设计。总体设计主要包括系统功能设计、系统总体结构设计、系统数据结构设计和系统安全设计等;详细设计主要包括系统数据库访问的实现,主要功能模块的具体实现,模块实现关键代码等。最后对系统进行功能测试,并对测试结果进行分析总结,得出系统中存在的不足及需要改进的地方,为以后的系统维护提供了方便,同时也为今后开发类似系统提供了借鉴和帮助。
校园协会管理系统主要功能模块包括个人资料,公共管理,用户管理,信息管理,协会信息,入户申请,协会成员,退会申请,解散申请,协会活动等,采取面对对象的开发模式进行软件的开发和硬体的架设,能很好的满足实际使用的需求。
关键词:校园协会管理系统;PHP;Thinkphp
PHP Campus Association Management System
With the rapid development of science and technology, all aspects of society and industries are striving to integrate with modern advanced technology and improve their own advantages through technological means, and universities are no exception. The Campus Association Management System is a management system developed based on practical application, using software engineering principles and development methods, and using Java technology. The entire development process starts with a requirement analysis of the software system to determine its main functions. Then proceed with the overall and detailed design of the system. The overall design mainly includes system functional design, system overall structure design, system data structure design, and system security design; The detailed design mainly includes the implementation of system database access, the specific implementation of main functional modules, and the key code for module implementation. Finally, functional testing was conducted on the system, and the test results were analyzed and summarized to identify the shortcomings and areas for improvement in the system. This provided convenience for future system maintenance and also provided reference and assistance for the development of similar systems in the future.
The main functional modules of the campus association management system include personal information, public management, user management, information management, association information, household application, association member, withdrawal application, dissolution application, association activities, etc. The software development and hardware installation are carried out using an object-oriented development model, which can well meet the actual needs of use.
Key words: Campus Association Management System;PHP;Thinkphp
目录
1.1 课题研究背景
高校学生协会是在对应管理教师的指引下由兴趣相同或相似的学生自发组成的带有俱乐部性质的学校小型团体组织,它们通常以举行带有协会独特风格的集众性活动来吸引学生加入协会组织。大学生协会是我国高校校园建设中不可欠缺的一环,亦是学生校园生活重要的组成部分。其潜移默化地影响着校园文化的发展,并有利于展开政治性思想教育,提高协会成员的社交能力与综合水平。我国对高校协会的研究主要形成于二十世纪末期。随着协会发展的重要性逐渐凸显,我国对高校协会的发展、建设能力略显陈旧,难以满足当下壮大并走向繁荣的协会发展现状。早期协会研究主要从以往的建设经验入手,较为感性的对大学生协会进行探索、研究相关管理以及组织方法。因此设计并开发一个校园协会管理系统是非常有必要的。
在以北京、上海、天津等一线城市的部分大学网站进行调查中发现,在访问的网站中,大多数高校网站上并没有专门的学生协会相关模块,有的也只是在新闻内容中略微提及,缺少明确的协会管理体系部分,且存在信息更新间隔过长、缺乏维护不便食用等问题。显然,高校协会在信息化的管理方面缺乏相应的协会管理的策略,更多地处于放任学生之间自由的发展协会的阶段;这使得协会之间发展的不均衡,或从根本上名存实亡的现象屡屡存在。在大多数大学网站上都没有找到较为完善的学生协会管理模块,甚至有的仅仅只在学校新闻中略加提及,缺少明确的协会管理体系结构。
国外的协会管理系统种类繁多,但主要以单一的协会管理为主体,这主要是因为国外的协会成员大多在大学结束后,可直接加入具有社会性质的俱乐部。大多数协会并不与学校有较明确的从属管理关系,但在协会相关活动等信息上更新与维护是较为及时的。
1.3研究方法
首先,通过引擎搜索或者查阅相关文献资料,了解了本系统开发的背景以及设计系统的意义所在,收集用户需求信息。其次,在开发工具上,最终确定是基于Mysql数据库,在php的Thinkphp框架设计的基础上实现,设计出系统大致的功能模块。主要从方便系统用户和系统管理员的角度进行分析,明确该系统应该具有的功能。最终是测试系统,通过用例测试发现存在的问题并找到解决的方案。利用现有的开发平台,结合自己所学的知识,在老师的指导帮助下来完成该设计,确保系统的可用性、实用性。
第二章 相关技术
2.1 开发技术
本系统前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型。后端部分:采用Thinkphp框架,运用phpstudy 集成开发工具。
2.1.1 MVVM模式
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大优点。低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。可重用性。你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。独立开发。开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计,使用Expression Blend可以很容易设计界面并生成xaml代码。可测试。界面素来是比较难于测试的,测试可以针对ViewModel来写。
2.1.2 B/S框架
B/S架构采取浏览器请求,服务器响应的工作模式。用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。
2.1.3 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语言开发大型商业程序也是可以胜任的。
2.1.4 Mysql数据库
Mysql 经过多次的更新,功能层面已经非常的丰富和完善了,从Mysql4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的Mysql支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。
针对本文中设计的校园协会管理系统在实际的实现过程中,最终选择Mysql数据库的主要原因在于在企业的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的Mysql来对校园协会管理系统后台数据进行存储操作。
第三章 校园协会管理系统分析
从开发工具来看,由于校园协会管理系统是基于PHP的,因此有很多开发工具都可以进行开发,这些功能强大的开发工具可以给我来设计校园协会管理系统带来非常大的方便。
从校园协会管理系统的本身技术来说,对于我来开发一个校园协会管理系统这个毕设是不费事的。校园协会管理系统的开发可以简单的分为前台端、后台端开发以及数据库开发。其中的大部分技术难点在我上学时已经使用过了,同时网络上很多技术点可以让我来借鉴。后台管理使用PHP的Thinkphp架构开发,数据库使用mysql,因此为我在开发校园协会管理系统这个毕设上省去了很多多余代码,这给我的毕设项目编写带来了极大的便利。综上所述,从技术层面来看开发校园协会管理系统是可行的。
从用户体验来看,市面上很多被广泛使用的系统案例可以让我来参考,因此我可以综合它们的页面交互设计的优点,基于我的毕设项目特点来进行改版,最后达到令用户满意的页面交互体验。综上所述,从技术层面来看开发校园协会管理系统是可行的。
从校园协会管理系统的开发成本来看,校园协会管理系统的设计和开发都是我自己完成的,没有其他成本上的开销。
从校园协会管理系统的维护成本来看,校园协会管理系统的开发遵循一套完整的代码编写规范,并且校园协会管理系统的结构设计非常灵活,遵循高内聚低耦合的原则,因此易于维护和迭代开发。
在校园协会管理系统上线之后,上线前期我会根据真实需求来调查,对使用我开发的校园协会管理系统来制定一套符合的使用费。系统运行稳定后我会将推广范围到其他的校园当中,其他校园可以使用我的校园协会管理系统,只需要缴纳一点点的定金,我会给他们引入广告投资和自营业务。
综合以上的分析,校园协会管理系统所带来的经济效益将会带来极大的收益。并且随着我的推广,来使用我开发的校园协会管理系统的市场将越来越大,校园协会管理系统带来的利润也就越来越多。因此,从经济层面来看开发校园协会管理系统的是可行的。
1.信息获取方便,用户可在网页上快速浏览到新的信息
2.查看协会详情等。
3.注册登录,需要吸引用户,即通过注册来提高用户的存留率。
4.修改用户信息,可以修改用户密码或者用户名等一些个性化操作。
5.管理员功能,管理员可以对用户或者协会信息、入会信息等进行管理。
6.系统安全,操作简便,不过于复杂。
7.系统可以稳定运行,不存在卡顿等问题造成用户反感。
校园协会管理系统的非功能性需求比如校园协会管理系统的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下2-1表格中:
表3-1校园协会管理系统非功能需求表
安全性 | 主要指校园协会管理系统数据库的安装,数据库的使用和密码的设定必须合乎规范。 |
可靠性 | 可靠性是指校园协会管理系统能够安装用户的指示进行操作,经过测试,可靠性90%以上。 |
性能 | 性能是影响校园协会管理系统占据市场的必要条件,所以性能最好要佳才好。 |
可扩展性 | 比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。 |
易用性 | 用户只要跟着校园协会管理系统的页面展示内容进行操作,就可以了。 |
可维护性 | 校园协会管理系统开发的可维护性是非常重要的,经过测试,可维护性没有问题 |
3.3 系统用例分析
根据上一节功能分析,可以得出系统的用例,用户角色用例如图2.1所示。
![](https://i-blog.csdnimg.cn/blog_migrate/c5476cf8d6747e3303222d7f671bcec8.png)
图3.1 校园协会管理系统中用户角色用例图
校园协会管理系统的管理员是维护整个校园协会管理系统中一系列数据流程,管理员角色用例如图2.2所示。
![](https://i-blog.csdnimg.cn/blog_migrate/4f1b3b39760e3646178a681ecb4d5495.png)
第四章 系统总体设计
根据第二章中校园协会管理系统的功能分析可知,校园协会管理系统中整体功能模块图如图4.1所示,
![](https://i-blog.csdnimg.cn/blog_migrate/c30ac64efc5c1e4fdba7c4af2fa38f35.png)
图4.1 校园协会管理系统功能模块图
4.2 数据库设计
4.3.1 数据库概念结构设计
下面是整个校园协会管理系统中主要的数据库表总E-R实体关系图。
![](https://i-blog.csdnimg.cn/blog_migrate/67cbaa574710587d67f2ba5ee451fe0f.png)
图4.2 校园协会管理系统总E-R关系图
4.2.2 数据库逻辑结构设计
通过上一小节中校园协会管理系统中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
3 | info | text | 65535 | 0 | Y | N | ||
4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 文章描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
表association_activities (协会活动)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | association_activities_id | int | 10 | 0 | N | Y | 协会活动ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
5 | activity_name | varchar | 64 | 0 | Y | N | 活动名称 | |
6 | event_date | date | 10 | 0 | Y | N | 活动日期 | |
7 | activity_picture | varchar | 255 | 0 | Y | N | 活动图片 | |
8 | activity_introduction | longtext | 2147483647 | 0 | Y | N | 活动介绍 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表association_information (协会信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | association_information_id | int | 10 | 0 | N | Y | 协会信息ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | number_of_associations | varchar | 64 | 0 | Y | N | 协会人数 | |
5 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
6 | cover_photo | varchar | 255 | 0 | Y | N | 封面图片 | |
7 | association_introduction | longtext | 2147483647 | 0 | Y | N | 协会简介 | |
8 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
9 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
10 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
11 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | association_leader_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 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | association_members_id | int | 10 | 0 | N | Y | 协会成员ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | member_comments | text | 65535 | 0 | Y | N | 成员备注 | |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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: |
表dissolution_application (解散申请)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | dissolution_application_id | int | 10 | 0 | N | Y | 解散申请ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | number_of_associations | varchar | 64 | 0 | Y | N | 协会人数 | |
5 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
6 | reason_for_dissolution | text | 65535 | 0 | Y | N | 解散原因 | |
7 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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: |
表membership_application (入会申请)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | membership_application_id | int | 10 | 0 | N | Y | 入会申请ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | application_content | text | 65535 | 0 | Y | N | 申请内容 | |
9 | application_status | varchar | 64 | 0 | Y | N | 申请状态 | |
10 | application_response | text | 65535 | 0 | Y | N | 申请回复 | |
11 | recommend | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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已取消 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | system_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 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
6 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
7 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | user_id | mediumint | 8 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
13 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
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 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表withdrawal_application (退会申请)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | withdrawal_application_id | int | 10 | 0 | N | Y | 退会申请ID | |
2 | association_number | varchar | 64 | 0 | Y | N | 协会编号 | |
3 | association_name | varchar | 64 | 0 | Y | N | 协会名称 | |
4 | association_leader | int | 10 | 0 | Y | N | 0 | 协会负责人 |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | reason_for_withdrawal | text | 65535 | 0 | Y | N | 退会原因 | |
9 | withdrawal_status | varchar | 64 | 0 | Y | N | 退会状态 | |
10 | reply_to_withdrawal | text | 65535 | 0 | Y | N | 退会回复 | |
11 | recommend | 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 | 更新时间 |
第五章 系统实现
5.1管理员模块的实现
系统的登录窗口是用户的入口,用户只有在登录成功后才可以进入访问。通过在登录提交表单,后台处理判断是否为合法用户,进行页面跳转,进入系统中去。
登录合法性判断过程:用户输入账号和密码后,系统首先确定输入输入数据合法性,然后发送登录请求,调用src下的mainctrl类的dopost方法来验证。
用户登录模块的IPO如下所示:
输入:用户名和密码。
处理:
1)检测用户输入的账号、密码是否正确及在数据库已对应存在。
2)从数据库中提取记录,并储存在本地的session中(timeout默认=30min)。
3)根据用户名,将其显示在系统首页上。
输出:是否成功的信息。
登录流程图如下所示。
![](https://i-blog.csdnimg.cn/blog_migrate/73d238a99a658b086e7752f3da0db7d9.png)
图5-1登录流程图
系统登录界面如下所示。
![](https://i-blog.csdnimg.cn/blog_migrate/eca95602fd9476d78ddaeadaa27ea124.png)
图5-2系统登录界面
5.2管理员功能模块
系统呈现出一种简洁大方的首页:界面简约、鳞次栉比,用户能轻车熟路的使用。出于对系统使用群体广泛的顾虑,应有良好性能的后台。
管理员登录进入校园协会管理系统可以查看:主页,个人资料,公共管理(轮播图,公告信息),用户管理(管理员,系统用户,协会负责人),信息管理(新闻资讯,新闻分类),协会信息,入户申请,协会成员,退会申请,解散申请,协会活动等内容,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/c2b62e1d4f2adf08ef1f5ef7ababba0d.png)
图5-3管理员功能界面图
用户管理,在此页面可以查看用户名、昵称、姓名、性别等信息,并可根据需要进行新增、重置或删除操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/3057acc0b65f7621137a0dc112d9c901.png)
图5-4用户管理界面图
协会信息,在列表可以查看用户创建的的协会信息,包括负责人,协会名称,协会编号,人数,简介等信息,并可根据需要进行新增、重置,删除,审核等操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/1f317d641adb0069a338dbd5375aaf67.png)
图5-5协会信息管理界面图
![](https://i-blog.csdnimg.cn/blog_migrate/ab541db11e9c3d4183df7ee321263844.png)
图5-6协会信息审核界面图
协会活动,在列表可以查看负责人提交的协会活动,包括负责人,协会名称,协会编号,活动名称,活动日期等等信息,并可根据需要进行新增、重置,删除,审核等操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/c07c61a8f3434a160b9b414b3b927d2e.png)
图5-7协会活动管理界面图
![](https://i-blog.csdnimg.cn/blog_migrate/5f271950495f272f695616197664d9e7.png)
图5-8协会活动审核界面图
5.2协会负责人功能模块
协会负责人登录进入校园协会管理系统可以查看主页,个人资料,协会信息,入户申请,协会成员,退会申请,解散申请,协会活动等内容,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/227bffbad717d74bb7a0c601ee4102a2.png)
图5-9协会负责人功能界面图
协会信息,在此页面可以通过填写负责人,协会名称,协会编号,人数,简介等信息创建协会,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/6f4d65ee642e4095905f387650bd9df8.png)
图5-10新增协会信息界面图
入会信息,在此页面可以查看用户提交的入会申请,包括用户信息,联系方式,申请原因等信息,通过入会申请后可以添加成员信息,并可根据需要进行新增、重置,删除,审核等操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/394c85e7dd18d006121f9ee4536e7d07.png)
图5-11入会审核界面图
![](https://i-blog.csdnimg.cn/blog_migrate/64c945b29a2a0ae1b31924251e90e1b8.png)
图5-12新增成员信息界面图
5.3系统用户功能模块
系统用户登录进入校园协会管理系统可以查看首页,公告信息,新闻资讯,协会信息,协会活动,入会申请,协会成员,退会申请等内容,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/9f579c483009f26c465d070dfc729a4b.png)
图5-13系统用户功能界面图
协会信息,可以查看负责人,协会名称,协会编号,人数,简介等信息,在详情页面可以进行点赞,收藏,评论,申请入会等操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/b83e921442401e5aae6330b9a2d7e68e.png)
图5-14协会信息列表界面图
![](https://i-blog.csdnimg.cn/blog_migrate/bdf2a3a1744a6606c3d258e77194f0be.png)
图5-15协会信息详情界面图
![](https://i-blog.csdnimg.cn/blog_migrate/3696472f860c9dce53ddfe91806e65e0.png)
图5-16申请入会界面图
协会活动,用户可以查看搜索协会活动,在详情页面可以进行点赞,收藏,评论等操作,如下图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/976b46adb9ce93b04b751e6b2d966f09.png)
图5-17协会活动列表界面图
第六章 系统测试
6.1测试目的
在对该系统进行完详细设计和编码之后,就要对校园协会管理系统方案的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。
6.2测试过程
在软件的测试过程中,通常测试人员需要针对不同的功能模块设计多种测试用例。通过测试用例能够及时发现代码业务逻辑上是否与真实的业务逻辑相对应,及时发现代码上或逻辑上的缺陷,以此来来完善系统,提高软件产品的质量,使软件具有良好的用户体验。
登录测试用例表如下所示。
表6-1登录测试用例
测试性能 | 用户或操作员登录系统 | ||
用例目的 | 测试用户或操作员登录系统时功能是否正常 | ||
前提条件 | 进入用户登录页面或操作员登录页面 | ||
输入条件 | 预期输出 | 实际情况 | |
各项信息不予填写,直接点击登陆按钮 | 不允许登录,提示填写账号相关信息 | 一致 | |
填写错误的登录名或密码后点击登录系统 | 提示用户名或密码错误,要求重新填写进行登录 | 一致 | |
填写与验证码信息不一致的信息 | 系统显示出提示信息,表明验证码错误,要求重新填写 | 一致 |
表6-2用户管理测试用例
测试性能 | 系统用户相关信息管理功能 | ||
用例目的 | 测试系统操作者对系统用户相关信息进行管理的功能是否正常 | ||
前提条件 | 登录系统进入相关管理页面 | ||
输入条件 | 预期输出 | 实际情况 | |
进入系统用户管理界面,点击“录入”按钮,填写所有必填项,点击提交 | 提示“录入成功”,并返回查询界面 | 一致 | |
进入系统用户管理界面,点击“录入”按钮,未填写一个或者多个必填项,点击提交 | 提示“录入失败”,请填写必填项 | 一致 | |
进入系统用户管理界面,选择要修改的一条数据,点击该条数据后面的“修改”按钮 | 节目跳转至修改界面 | 一致 | |
在修改界面,修改可修改项后,点击“提交”按钮 | 提示“修改成功”,并返回查询界面 | 一致 | |
进入系统用户管理界面,点击某条数据后面的删除按钮 | 提示“是否要删除该数据”,如果用户点击“确定”按钮,则成功删除该条数据,并提示“删除成功”,之后返回查询界面 | 一致 |
6.3测试结果
经过对此系统的测试,得出该系统足以满足用户日常需求,在功能项目和操作等方面也能满足操作员对于其他用户的管理。但是,还有很多功能有待添加,这个系统仅能满足大部分的需求,还需要对此系统的功能更进一步的完善,这样使用起来才能更加的完美。
结论
至此,校园协会管理系统的设计开发已经结束,在开发前做了许多的准备,在本系统的设计和开发过程中阅览和学习了许多文献资料,从中我也收获了很多宝贵的方法和设计思路,对系统的开发也起到了很重要的作用,系统的开发技术选用的都是自己比较熟悉的,比如Thinkphp、PHP技术、MYSQL,这些技术都是在以前的学习中学到过,但是实践较少。其中许多的设计思路和方法都是在以前不断地学习中摸索出来的经验,其实对于我们来说工作量还是比较大的,但是正是由于之前的积累与准备,才能顺利的完成这个项目,由此看来,积累经验跟做好准备是十分重要的事情。
当然在该系统的设计与实现的过程中也离不开老师以及同学们的帮助,正是因为他们的指导与帮助,我才能够成功的在预期内完成了这个系统。同时在这个过程当中我也收获了很多东西,此系统也有需要改进的地方,但是由于专业知识的浅薄,并不能做到十分完美,希望以后有机会可以让其真正的投入到使用之中。
参考文献
[1]Shadmehri Mehran,Abedanzadeh Amir,Shafii Mohammad Behshad,Ghasempour Roghayeh,Mohsenzadeh Milad. Development and economic evaluation of a CPVT system with PHP cooling; An experimental study[J]. Energy Conversion and Management,2023,283.
[2]Rio Américo,Brito e Abreu Fernando. PHP code smells in web apps: Evolution, survival and anomalies[J]. The Journal of Systems & Software,2023,200.
[3]蒋先梅.基于PHP的学生信息管理系统的设计与实现[J].无线互联科技,2023,20(01):45-47.
[4]王金恒,梁凤霖,尹菡,钟颖,余丹凤.校园社团管理系统的设计与实现[J].电脑编程技巧与维护,2022(06):85-88.DOI:10.16184/j.cnki.comprg.2022.06.013.
[5]黄波.基于PHP+MySQL图书管理系统设计与实现[J].信息与电脑(理论版),2021,33(19):124-126.
[6]陈进强.某学院学生社团管理系统设计与实现[J].科学技术创新,2021(24):108-110.
[7]任鑫梅,刘小英.高校社团管理信息系统的设计与实现[J].电脑知识与技术,2021,17(11):31-32+35.DOI:10.14004/j.cnki.ckt.2021.0923.
[8]吴尚妍,陈贵平.基于JavaWeb的校园社团平台设计与开发[J].电脑知识与技术,2021,17(10):76-78+92.DOI:10.14004/j.cnki.ckt.2021.1039.
[9]Marufovich Aripov Masud,Horun Yahya,Usmon Nuriy Topbosh,Aripov M. M.,Normatov R. N.,Siddikov I. M.,Oripova U.,Ilya Golubev,Abdullaeva N. B.,Nurmatova M. A.,Yokubovna Y. H.. Encryption of the quran and forecasting events[J]. ACADEMICIA: AN INTERNATIONAL MULTIDISCIPLINARY RESEARCH JOURNAL,2021,11(2).
[10]苏天意,余明朕.基于PHP的高校实验室管理系统的设计与实现[J].中国管理信息化,2021,24(02):198-199.
[11]蔡俊铠,廖晓芳,朱俊宇,方栋豪.基于PHP+MySql的宿舍管理系统[J].电脑知识与技术,2020,16(36):60-63+74.DOI:10.14004/j.cnki.ckt.2020.3682.
[12]符毓晟.高校学生社团管理系统设计与实现[J].电脑知识与技术,2020,16(27):75-78.DOI:10.14004/j.cnki.ckt.2020.2879.
[13]高鉴.基于JAVA的社团管理后台系统设计[J].中阿科技论坛(中英文),2020(09):90-93.
[14]邓智灵, 协会会员管理系统V1.0. 广西壮族自治区,柳州双成科技有限公司,2020-06-23.
[15]曹光辉.基于Web的高校社团管理系统设计与实现[J].无线互联科技,2020,17(08):38-40.
[16]王娟,马薇.基于.NET的协会会员管理系统的设计与实现[J].电子技术与软件工程,2020(05):169-170.
[17]李欣煜.基于Android系统的大学生社团管理系统的设计与实现[J].数码世界,2019(10):191.
[18]李冉, 市级志愿者协会管理系统v1.0. 湖北省,荆楚理工学院,2018-12-03.
[19]QingHai Yin. Research and Implementation of Network Examination System Based on PHP Language[J]. Journal of Physics: Conference Series,2018,1087(6).
[20]Rotmianto Mohamad,Wahyudi Eko. Developing Plugin e-DDC as an Additional Application for Senayan Library Management System with PHP Language Programming and MySQL Database[J]. Record and Library Journal,2018,2(1).
致 谢
时间过的很快,不知不觉,在大学的学习生活即将结束。毕业之际,我真诚地向帮助过我的老师、家人、同学、朋友们表达感谢。首先要感谢的是我的母校。感谢母校给了我美好的生活和优越的学习环境,使我能学到了很多知识,也不断的变得优秀;感谢家人在这四年期间一直给与我的爱和无条件的支持,让我没有后顾之忧地完成学业;感谢任课老师们给我鼓励和认可,让我有信心去做好每一件事情;感谢同学们的帮助,让我的大学生活更有意义。在此次毕业设计的实现过程中, 我得到了老师们的耐心指导让我顺利完成了该设计。从最初的选题和开题开始,老师就给予我很多帮助,他们认真负责的态度、丰富的教学经验让我学到了很多。
同时也要感谢我敬爱的班主任和实训课程的老师,他们在各个方面都教给了我丰富的经验,在面对各种困难时如何处理。因为今年的特殊性,老师们不仅在学习中给我以精心的指导,同时还在其它方面给予我观关怀,指导老师不辞辛苦的为大家录制视频和一遍遍讲解让我心怀感激之情。在此,我真诚的感恩、感谢我的指导教师们。
还要感谢实习期间不厌其烦教导我鼓励我的技术师傅,他指导了我各个方面的技巧,尤其是编程方面,迄今我的很多技巧和编写规范都有赖于他的指导、纠正。
最后还要特别感谢身边的各位同学们,一直支持鼓励我,无论何时何种境况。我很荣幸获得同学们的帮助,也很开心能够和大家共度大学四年的时光。
最后的最后,再次发自肺腑的感谢所有帮助过我的人。
免费领取项目源码,请关注❤点赞收藏并私信博主,谢谢-