admin 管理员组

文章数量: 1184232


2024年3月8日发(作者:replace函数怎么显示隐藏数据)

ISSN1009-3044ComputerKnowledgeKnowledgeandandTechnologyTechnology电脑知识电脑知识与技术Computer与技术Vol.16,No.36,December.2020E-mail:*************.cn第16卷第36期(2020年12月)http://:+86-551-6569基于PHP+MySql的宿舍管理系统蔡俊铠,廖晓芳,朱俊宇,方栋豪(广东外语外贸大学南国商学院,广东广州510545)摘要:该系统设计主要分为功能模块的源代码设计以及后台数据库的设计。使用的是HTML+CSS+JS进行前台页面交互设计,并通过PHP与MySQL的连接,构建一个基于B/S模式下的WEB宿舍管理系统。该系统操作简易、实用性良好,在保持系统能够正常运行的前提下,能保证系统管理有效性以及提高管理效率。能有效帮助宿舍从业人员进行宿舍管理,极大地提高工作人员的工作效率。关键词:B/S模式;宿舍管理系统;效率中图分类号:TP311文献标识码:A开放科学(资源服务)标识码(OSID):文章编号:1009-3044(2020)36-0060-041背景随着社会高速发展,大学生数量日益增多,呈现增长的趋势。如何高效管理学生,成了学校教育工作者的一个重要任务。而宿舍是学生大学的住所,是学生学习和生活的主要场所。随着互联网的普及,校园网覆盖日益完善,宿舍管理网络化是必然的趋势。但当今许多宿舍管理仍然采用纸质的形式,管理起来消耗大量的时间和精力,十分低效。比如:通知的传递性不强,记录物品遗失信息以及维修记录仍然采用笔记和口头通告的方式。因此在见识到宿舍管理的漏洞和不足之下,开发出一款能够及时、有效的整理和记录高校宿舍的相关信息的宿舍管理系统是十分有必要的。而且宿舍管理系统的出现能极大地减少人力、物力的使用,可以在保障信息传递效率和信息及时保存的安全性,更加方便了相关人员对信息、数据的查询。因此,十分有必要利用计算机网络技术,构建一个宿舍管理系统,对学生进行科学有效的管理。和php环境以及MySQL数据库组成的集合包,支持中文,安装简单快捷,一步搭建本地环境,而且可以通过phpMyAdmin网页页面管理MySQL数据库。2)MicrosoftVSCode编辑器:VsCode是微软开发的编辑器,占用小,界面设计好,程序、系统调试方便快捷,支持多文件格式访问,插件丰富,提高开发效率。3)MySQL数据库:是web程序中最方便快捷易上手的数据库之一,搭建简单,数据一般存储在不同的表内,十分易于访问和管理。4)PHP语言:PHP是服务器执行的脚本语言,是常见的网站编程语言,适用于WEB开发,函数封装方便,可以与许多主流数据库轻松建立连接,易于学习,应用十分广泛。3系统的分析与设计系统的分析主要分为两种,一种是需求分析,需求分析的意义在于能更快地把这个系统的架构逻辑都梳理清楚,另一种是功能分析,功能分析的意义在于分析如何更快地处理整个系统的细枝末节部分。系统的设计也分为两类,一类是数据库的设计,主要用于更好地建立系统的数据之间的连接关系,而另一类是系统的流程图设计,流程图能更好地展示系统功能的整个过程。3.1需求分析2系统架构及工具介绍2.1系统架构介绍本系统是基于PHP+MySQL的宿舍管理系统,使用B/S架构,在WampServer环境进行开发。通过浏览器访问web服务器获取到数据库数据进行添加、删除、修改、查询的操作。前端页面的实现是通过HTML语言,由CSS语言进行前端页面美化设计,而且为了用户在移动端查看显示内容,使用了BootStrap框架进行兼容性设计。页面与用户进行交互的是由JavaScript的框架JQuery完成。系统的后台设计以及数据库的连接是通过PHP完成的,为了保证数据的稳定和正确性,使用了大量的逻辑条件判断。2.2相关技术与软件介绍基于PHP+MySql的宿舍管理系统具有四个用户权限,分别是学生、老师、宿管以及系统管理员。他们使用各自拥有的权限对系统进行操作,通过权限分管可以让系统交互性更好,安全性更高以及能有更好的效率运行。需求权限如图1所示:1)WampServer集成环境:WampServer是由Apache服务器收稿日期:2020-09-08基金项目:2019年广东省大学生创新创业训练计划资助项目:基于php+mysql的宿舍管理系统(项目编号:S2)作者简介:蔡俊铠(1999—),男,广东揭阳人,本科在读,研究方向为计算机应用、计算机软件与理论;廖晓芳(1979—),女,福建建瓯人,讲师,高级工程师,硕士,研究方向为人工智能、图像处理;朱俊宇(1998—),男,广东韶关人,本科在读,研究方向为计算机应用、计算机软件与理论;方栋豪(1999—),男,广东揭阳人,本科在读,研究方向为计算机应用、计算机软件与理论。60软件设计开发本栏目责任编辑:谢媛媛

第16卷第36期(2020年12月)图1系统的需求权限分析图3.2功能分析1学生端中学生可在网页端中享受到以下服务:)学生端功能(包括但不限于)学生可以申请寝室的调换,自主报修宿舍设施,进行楼层群体讨论、娱乐以及接收通知,以及接收到宿管或者学院老师推送的各种通知事宜等服务。2老师端可通过管理员下发的账号到网站进行登录操作,)老师端功能对所属管辖范围内的学生群体进行管理操作,收发来自宿管的通知,接收学生的申请请求,3以及发送重大通知到学生群体中。宿管端中宿舍管理员可以自主登录学校提供的账号,)宿管端功能系统自动绑定所属管辖的宿舍栋数,并且可以接收到学生的报修信息、申请信息以及其他信息等,与此同时,宿舍管理员还可以查询到学生所属宿舍号,所属专业等个人信息,并且可以与门禁系统接入,及时了解到学生的出入情况,还需把学生寝室调换申请信息上报到学生所属学院的辅导员或书记处进行审批,接收来自老师的通知。4管理员对数据库进行维护,)管理员功能保持系统的正常运行,并且对老师、宿管进行账号的注册与删除,对学生数据进行Excel表格的批量添加,以及一键删除操作。以及对通知、讨论帖子进行删除操作。3.3数据库设计通过分析系统需求以及划分功能模块图,在数据库中设计了10号、姓名、1张表:)学生表:性别、用于保存学生注册时填写的信息,宿舍号、手机号码、身份证号码、所属学院、包括表id所属、学专业、入学年份。表1学生表名称数据类型长度备注stuidint10ID主键stunumint10学生学号stunamevarchar20姓名stusexvarchar5性别sturoomnumint4宿舍号stucellnumbigint12手机号码stuidenbigint20身份证号studepvarchar15所属学院本栏目责任编辑:谢媛媛ComputerKnowledgeandTechnology电脑知识与技术stumajorvarchar50所属专业stuyearyear4入学年份身份证号码、2)宿管表:stupwd手机号、用于登记宿管个人信息,varchar20登录密码所属宿舍栋数、登录密码。包括表id、工号、姓名、表2宿管表名称数据类型长度备注houidint11ID主键hounumbigint10宿管工号hounamevarchar10姓名houidenbigint20身份证号houtelnumbigint12手机号码houdepvarchar10所属宿舍楼houpwdvarchar20登录密码性别、3)身份证号码、老师表:用于登记老师个人信息,手机号、所属学院、登录密码。包括表id、工号、姓名、表3老师表名称数据类型长度备注teaidint10ID主键teanumint10老师工号teanamevarchar10姓名teasexvarchar5性别teatelnumbigint12手机号码teaidenbigint20身份证号teadepvarchar15所属学院teapwdvarchar20登录密码密码。4)管理员表:管理员登录信息,包括表id、用户名以及表4管理员表名称数据类型长度备注uidint10ID主键unamevarchar10管理员账号upwdvarchar20管理员密码数、宿舍号以及状态5)宿舍表:存储所有宿舍的住人情况,“未住人”(,“已住人”)。包括表id,栋数、楼层表5宿舍表名称数据类型长度备注idint11ID主键buildnumsmallint2栋数floornumtinyint2楼层数roomnumvarchar3宿舍号statevarchar15入住状态6)申请表:用于学生进行调换宿舍以及设备报修的申请、软件设计开发61

ComputerKnowledgeandTechnology电脑知识与技术包括表id、申请标题、申请内容、学生学号、申请状态“已审阅”(,“未审阅”)、提交时间。表6申请表名称数据类型长度备注eventidint10eventconeventtitvarcharstunumbiginttext20020ID主键申请标题申请内容10学生学号statetimestampvarchar20申请状态0申请时间发送标题、7)通知表:time发送内容、用于用户群体收发通知,接收者信息、发送时间。包括表id,发送人信息、表7通知表名称数据类型长度备注sendernotidvarcharint10ID主键发送者titlevarchar50通知标题con20020通知内容receivertimestampvarchartext50接收者0发送时间id院、、姓名、8)学生详细信息表time所属专业、性别、:用于批量上传学生详细信息,包括表入学年份、生日、身份证号、相片。家庭地址、毕业中学、所属学表8学生详情信息表名称数据类型长度备注idint11ID主键namevarchar15姓名sexvarchar5性别birthvarchar15生日idenbigint20身份证号addressvarchar150家庭住址graduavarchar40毕业中学departvarchar15所属学院majorvarchar20所属专业yearyear4入学年份表id、9)帖子标题、帖子详情表:帖子内容、用于学生讨论发布的帖子详情内容,发布时间、发布人信息。包括表9帖子详情表名称数据类型长度备注idint11ID主键titlevarchar30帖子标题convarchar1000帖子内容commenttinyint4评论数量timedatetime20发帖时间pubmsgvarchar30发帖者信息62软件设计开发第16卷第36期(2020年12月)回复者信息、10)回复帖子表楼层数、:用于回复帖子内容,回复时间。包括表id、回复内容、表10回复帖子表名称数据类型长度备注idint11ID主键uidint11帖子IDcontext200回帖内容replyervarchar30回帖者信息timedatetime0回帖时间3.4流程图设计1在用户群体进入本系统后,)登录功能设计会通过下发的账号密码进行各个端口的界面登录,在输入账号和密码时,若输入的内容和数据库内的信息匹配,则会跳至各个端口的主页面,否则系统会提示用户名或密码错误。本系统的用户登录步骤流程图如图2所示:2图2登录步骤流程图在学生登录到主界面进入讨论页面后,)讨论功能设计可以进行自由发帖以及回复帖子,回复帖子中的楼层的操作。若回复的内容不符合要求,则管理员可以删除帖子。查看其他人或者自己发的有关学校时事、学校风景、学校趣闻的内容。讨论功能流程图如图3所示:本栏目责任编辑:谢媛媛

第16卷第36期(2020年12月)3图3讨论功能流程图通知收发送功能在本系统中的三个用户群体中均有使用,)通知收发送功能设计发送通知是通过Ajax连接数据库获取到需要发送的对象信息,然后输入需要发送的内容,点击发送成功即可。接收通知则是用户登录后可在相对应的界面中找到近5天的具体通知信息。通知收发送功能流程图如图4所示:4搜索管理用户功能是本系统最重要的功能之一,)搜索管理用户功能设计图4通知收发送功能流程图主要的实本栏目责任编辑:谢媛媛ComputerKnowledgeandTechnology电脑知识与技术现是通过用户选择需要查找的信息类别,再输入查找的内容即可检索到数据库中的数据,从而判断是否能获取到搜索结果。搜索管理用户功能流程图如图所示:图5搜索管理用户功能流程图4系统主要功能实现本系统的主要功能的实现分为三大模块,分别为数据库的连接绑定、页面的设计、交互逻辑的实现。4.1数据库的连接系统中使用MySQL数据库存储数据,任何信息管理系统中,数据库操作都是最核心的操作之一。其他操作需通过数据库的基本操作才能进行,浏览器访问后台的数据库获取数据,经处理后显示给用户。[1]此系统采用的是WampServer的环境,通过内置的phpMyAdmin进行数据库的页面式操作。而数据库的连接是通过php语言的封装函数实现,通过封装后的数据库连接函数十分方便,可通过外部连入,输入当前连接的数据库名称、角色名、密码。4.2页面设计页面设计主要采用的是HTML+CSS进行页面的美化设计,通过设计图进行页面布局,如图6所示。页面分为四个端:学生端、老师端、宿管端、管理员端,因为图片太多故只放首页图。实际通过代码语言实现的页面效果如图7所示:图6首页设计图纸(下转第74页)软件设计开发63

ComputerKnowledgeandTechnology电脑知识与技术第16卷第36期(2020年12月)缓存内容。出于对整体性能的考虑,本系统对交易进行分类,综合运用了两种方法。图2系统运行图由于为查询类交易在缓存未被命中时添加缓存,缓存未被访问时间超过阈值才清除,可能导致动账类交易对数据的修改,在缓存失效前无法被重新加载。对于一些热表数据,可能存在全天驻留缓存的情况,可能产生以下现象:用户在公共应用系统对机构数据进行了修改,但由于缓存中存在原数据,子系统查询交易依然返回修改前数据,由此出现缓存脏读现象。以上情况可以通过两种方案解决:1)每日批量;2)实时刷新。为提高缓存命中率,公共应用系统每日批量于每天早上5点进行参数预读入,先清空缓存,自动发起机构、员工、财会参数等常用数据的查询交易,进行缓存预加载。此举不仅可以在系统正式服务时拥有良好的缓存命中率,且可解决缓存脏读问题。经实测,系统每日8点正式对外提供联机服务,日常状态下,双缓存命中率可达到95%以上。此方法适用于可容忍T+1时效的系统数据。对于实时性要求很高的数据,如汇率,采用实时刷新方式。在修改了该数据的动账交易结束后强制刷新图3缓存效果图为系统添加双缓存后,系统的整体性能有了显著提高。以4000条用户权限范围内的机构数据下载为例(机构视图表数据量约50万,每条记录约50个属性,大部分属性需要子表翻译),添加缓存前,测试环境响应时间约2分钟,添加缓存后同环境响应时间降至20s以内。参考文献:[1]黄向平,彭明田,杨永凯.基于内存映射文件的高性能库存缓存系统[J].电子技术应用,2020,46(7):113-117,126.[2]宁方美,贺雪梅,牟晋娟.SpringBoot集成Redis缓存技术在企业一卡通系统中的应用[J].电子技术与软件工程,2019(24):133-134.【通联编辑:唐一东】(上接第63页)Apache服务区,进入到本地域名进行网站登录测试。5.2测试步骤在Chrome浏览器输入网址,进入登录界面,进行注册/登录操作。完成操作后,进入主界面,在主界面中有讨论区、娱乐游戏区、调换宿舍申请、宿舍报修申请的功能模块选择。完成既定的目标后,退出系统,完成此次操作。6结束语图7实际实现效果而且为了让用户体验更好,本系统采用了Ajax技术,即通过JavaScript语言与服务器进行少量数据交换,可以让网页在不重新加载的前提下实现小部分内容的异步更新,从而提高系统的使用质量。4.3登录后的缓存设计在这次的系统设计中,出现了几个难以解决的问题。比如学生端的讨论区中,如何实现讨论帖子中的楼中楼的逻辑思路。又或者是在管理员端中,如何通过Excel文件上传,批量获取其中的学生数据。这些问题困扰了许久,最终通过团队成员的努力,最终实现了系统的设计,完成了预期的目标。本次系统设计也将会应用于本校进行投入使用,让学校的宿舍管理更加方便、快捷。为了保存用户在注册或者登录后的缓存信息,本系统采用的是cookie的页面缓存技术。在用户进行页面登录后,后台通过cookie保存了登录的账号与密码,但是保存的时长规定为1小时。使用者可通过这个缓存技术,在一小时内自由登录该网站而不需要进行二次登录。而且用户如果想删除这个cookie,可通过退出按钮进行退出。实现的操作是通过获取比当前时间time()函数还要前的时间进行删除。参考文献:[1]胡子豪.学生宿舍管理系统分析与设计[J].信息与电脑(理论版),2018(21):82-83.[2]曾玉红.基于B/S高校宿舍管理系统的设计与实现[J].电脑知识与技术,2018,14(36):60-62.[3]桑一梅,汝心怡.基于ThinkPHP的学生宿舍管理系统的开发[J].电脑知识与技术,2019,15(25):52-53.[4]胡橙凤.基于B/S架构高校宿舍管理系统设计与实现[J].电脑知识与技术,2020,16(6):61-62,69.[5]欧畅.宿舍管理系统的前端设计与实现[J].湖北农机化,2020(2):186-187.【通联编辑:谢媛媛】本栏目责任编辑:谢媛媛5测试5.1测试环境在Chrome浏览器进行测试,通过WampServer构建本地74软件设计开发


本文标签: 系统 进行 宿舍 学生