当前位置:文档之家› 基于PHP技术的高校学生管理系统设计与实现

基于PHP技术的高校学生管理系统设计与实现

基于PHP 技术的高校学生管理系统设计与实现收稿日期:2005-09-28.基金项目:河南省高等学校网络课程(教高[2004]430号)。

作者简介:梁存良(1976-),男,河南项城人,在读硕士。

梁存良(河南师范大学物理与信息工程学院,河南新乡453007)摘要:针对当前许多学生管理系统在功能设计与应用中的不足,从实际应用的角度开发了基于PHP 技术的高校学生管理系统,增加了跟踪学生表现的预警机制、心理咨询模块等。

它为探索学生管理模式,实施科学管理提供了依据,为学生管理系统的进一步完善提供了技术基础。

关键词:学生管理系统;PHP;数据库中图分类号:TP315 文献标识码:A 文章编号:1003-482X(2005)04-0076-04Design and Realization of PHP -based TechnologicalStudent Management System of Colleges and UniversityLIANG Cun -liang(Henan Normal University;Xinx iang ,Henan,453007,China)Abstract :T her e w er e some defect s of function and applicatio n in many student management systems thatw ere available in r eal life.A cco rding to actual setting ,w e ha ve desig ned t he student management system of PHP -ba sed t echnolo gy ,increa sed t he ear ly w ar ning m echanism,the psycholog ical consult atio n module and so on,w hich pr ov ide ex per ience fo r pr obing the mo de of student ma nag ement and practising scientific manag e-ment ,and meanw hile offer technolog ical fo undation for its fur ther perfecting .Key words :st udent management sy st em,P HP ,database1 引言随着计算机网络与软件技术的飞速发展,计算机作为一个全新的管理手段应用到了各个领域。

为了提高国民素质,我国从20世纪90年代末开始扩大高校的招生规模,使得高校在校生人数达到了原来的4倍[1],学生管理面临着巨大的压力,因此有许多高校和公司相继开发出基于不同技术环境的管理系统,为高校学生的科学管理提供了强大的科学依据和决策支持,但经过近几年的使用情况来看,存在着以下几方面问题: 功能只限于某一个或几个职能部门,数据规格不一致,造成管理上的脱节,延误工作的进度,甚至个别高校原购置的管理系统处于闲置状态。

许多管理系统看上去功能强大,其实质只是一个记事本、备忘录,管理中缺少对学生突发事件的预警机制。

只重视对实际数据的管理、计算、报表等,忽视了心理因素对学生成才的影响。

!许多管理系统使用时要安装终端模块,还要进行复杂的配置,需要专门的培训,不利于操作的大众化。

为了实现学生管理的科学化、规范化、现代化,树立“以人为本”的管理模式,结合许多管理系统存在的问题,并使管理系统更好地为学生管理服务,我们构建了基于PHP 技术的高校学生管理系统,将会促进我国高等教育办学层次和人才培养水平的发展,具有一定的应用价值。

76第33卷 第4期河南科技学院学报(自然科学版)2005年12月Vol.33 No.4Jo urnal o f Henan Institute of Science and Technolog y Dec.20052 系统总体设计2.1 设计思路按系统工程原理把学校作为一个整体系统,采用职能结构的形式,针对上述问题,增加了两个模块和两个单机终端,并实现了模板与代码的分离。

具体内容如下:本系统对学业、组织发展、综合表现等各项指标具有预警机制,即对出现的异常情况具有跟踪处理功能并做出提示,以便辅导员提前做工作,如学生同一学期若有2门(可由管理员设置门数)主课程不及格,系统则自动生成给家长的一封信,及时使辅导员与家长沟通,减少对学生的损失。

本系统不仅增加了学生的心理咨询模块,还实行模板与程序代码的分离,易于二次开发,并能实现管理上的个性化。

许多管理系统中的学生成绩是由管理员录入的,这样做显然不符合管理的实际,如我院每学期考试结束就有10000多个成绩数据项需要录入,这样大的录入工作量若由一个教务管理员操作,效率低且容易出现错误。

此单机终端体积小,由任课教师录入成绩,效率高、成绩可信。

2.2 系统结构针对C/S(Client/Server)结构与B/S(Br-ow ser/Serv er)结构的利弊,建立C/S、B/S结构相混合的网络构架已成为必然趋势[2]。

因为安全性能方面的考虑,本系统就是采用了二者的混合模式结构设计而成的。

这样只需对服务器端的管理平台进行开发和集成,减少了开发、安装和维护费用。

对客户端的要求也比较低,只要安装Inter-net Ex plo rer,即常说的IE浏览器即可,且用户的操作简单,不需要对教师进行专门培训。

2.3 硬件要求主要是对服务器的要求,由于该系统耗费系统资源非常少,所以一般的校园网服务器都能胜任,但硬盘数量要求两个,以便备份数据。

2.4 开发平台Apache、PHP和M ysql的结合,为建立基于数据库的动态网站提供了强大动力,被Linux下WEB开发者称为“黄金搭档”。

另据Web服务器调查公司Netcrafe调查,全Internet有50%以上的Web服务器都在用Apache[3]。

因此本系统选用A pache作为服务器,具有较高的可靠性和可用性,实现了长时间持续无故障运行。

服务端脚本语言选用PHP。

PHP是一种用于创建动态WEB页面的服务端脚本语言,在语法上同C语言非常类似。

它是一种开放源代码程序,具有良好的跨平台特性,在跨系统移植时不需要修改代码就可直接运行在UNIX、LINUX、WINDOWS系统上。

M ySQL是受欢迎的SQL关系型数据库管理系统,任何人都可以从Internet上下载和使用M ySQL而不需要支付任何费用[4]。

由于开发环境、服务器及数据库均是开源的,所以此系统的推广费用及日后再维护费就比较低,具有广阔的应用前景。

另外,成绩单机终端和学生终端,用VFP环境开发,具有稳定性和体积小的特点,是单机版,用户不需安装。

3 系统实现3.1 功能模块系统采用校院二级管理模式,分三个模块:学校职能模块、教师模块和学生模块。

每个模块又分为多个子模块,如图1。

图1是系统设计的模块划分,在实际管理中,既有纵向的决策指导又有横向的联系。

需要说明的子模块有:新生入学注册,该子模块是许多系统没有的。

它的数据来源于三个方面,学校的高招系统,包括学生的姓名、性别、家庭地址、高考准考证号、院系专业、照片等;宿舍管理中心分配的楼号、房间号、电话等;财务处从银行有关该生的学费划拨情况。

当新生报到时,登录系统,为每生打印一页迎新须知,包括上述信息、新生报到流程、报到存根,并让学生签名,为学生注册提供了法律依据。

个性展示,是本系统的创新模块。

当前在校生基本上都是上世纪八十年代初出生的独生子女,这部分学生具有好强和自私心理,遇事讲攀比,且经受不了挫折和困难的打击,心理非常脆弱,为预防学生出现过激行为,本系统设置了心理咨询模块,为避免学生对此敏感,我们叫做“个性展示区”,现在主要由学校心理咨询中心的老师及学生辅导员在网上作客,通过在线聊天、短消息等形式实现师生的实时互动,就学生提出的问题、话题进行答疑、引导,效果明显,加强了教师对学生的监77第4期 梁存良等:基于PHP技术的高校学生管理系统设计与实现 管工作。

成绩终端模块由任课教师管理,负责学生成绩的录入;学生终端模块由学生干部管理,以月为单位录入各班学生的平时品德、文体表现。

操作完成后导出数据,并通过Email 发给教务管理人员或学生辅导员,通过M ysqlImpo rt 应用服务把数据导入系统。

因为对于学校来讲,学生的成绩管理是各项管理的核心,若每一位课任教师都去操作成绩库,是不安全的,所以本系统采取教务管理员统一管理成绩。

许多模块均有查询、统计、报表、打印功能。

图1 学生管理系统3.2 相关编程技术位于Include 文件下的function.php 文件是自定义函数文件,其中的Online()函数验证操作权限,站点下的所有文件首行均是Online();functio n Online(){glo bal $H TT PGETVARS,$HT TPSESSION VARS;if (!em pty ($HTT P GET VARS ['Oper'])){//Oper 是操作代码,是由authori-ty .php 文件产生的$auth =0;$auth array 0=explode("●",$HT TP SESSIONVARS['SESSU SERauth']);$auth number=count($autharray 0);fo r ($i=0;$i<=$authnumber ;$i++){if(em pty($auth arr ay 0[$i]))continue;if ($HT T P GET VARS ['Oper ']==$auth array 0[$i ]){$auth =1;br eak;}}}用以下结构体取数据库信息:$userinfo =$DB->query ("select *fro m user list where username ='$login id'",$dbbase );$userro w s =m ysql fetch ar ray($user info);//依取用户用户信息为例学生同一学期考试若有n 门功课不及格,由以下代码实现预警机制:$fail=$DB->quer y("select count(*)as num ber fr om achiev e w her e usernam e='$log in id'and major ='1'and co urseyear ='$academicy ear'",$dbbase);$failnumber =mysqlfetchar ray($fail );if ($failnumber [num ber ]>=n){//由教务管理员设置预警门数necho"该同学一学期有<font co lor=red>".$failnumber [number ]."</font >门主科不及格,请注意引导!<br>";exit;}由于篇幅有限,摘录其中关键代码示例。

相关主题