APP下载

基于PHP的学生信息管理系统的设计与实现

2023-03-20蒋先梅

无线互联科技 2023年1期
关键词:语句账号管理员

蒋先梅

(江苏联合职业技术学院徐州经贸分院,江苏 徐州 221004)

0 引言

学校管理工作的核心任务就是学生管理工作,长期以来,多采用人工的方式来完成学生管理工作任务。以人工方式管理的过程中,许多信息会多次进行处理,产生大量的重复工作,效率很低,信息的保密性也很差。随着时间的积累,产生了大量的冗余数据和文件信息,使得查找、修改和维护工作变得棘手。

网络信息技术已经应用于各行各业之中,它不仅能够帮助人们高效、简易地找到信息资源,还可以利用其特点与优势创造出新技术,职业院校也可以以此为发展新契机,创造性开发和完善一个信息完整、简易操作、功能齐备、性能完好的学生信息管理系统。教师和管理人员可以实时对学生的信息进行查询、修改、维护,该系统大大减少了冗余的工作量,让管理更加科学化、便捷化、智能化、规范化,有效提高了学生管理工作的质量与效率,为职业教育的发展与进步提供有力支持。

1 系统开发技术

选用PHP技术对系统进行开发和设计,采用MySQL数据库存储和管理数据信息,PHP与MySQL两者组合发挥各自的优势,发挥了有效性、可用性。

1.1 PHP介绍

超文本预处理器(Hypertext Preprocessor,PHP),是一种开源的、免费使用、运行在服务器端的脚本语言[1]。PHP学习了C语言,吸纳了Java和Perl多个语言的优势,创造出了独特方便快速的语法风格。PHP使用非常方便、灵活,支持两种开发方式,即面向过程和面向对象。PHP和HTML可以相互嵌入使用,编辑快捷、简易,实用性强,跨平台性好,方便移植。

1.2 MySQL介绍

MySQL是一种可以实现多线程、多用户的数据库服务器,它具有开源免费、容易使用、运行速度快、管理简易、安全可靠性好、丰富接口、可移植性好、跨平台好、稳定性好等优点[2]。MySQL以多样性的优势赢得了开发者的青睐,在系统开发中得到了大量使用[3]。

1.3 Apache介绍

Apache是一个完全免费、源码开放的WWW服务器软件,可以在多种计算机操作系统中运行[4]。Apache的特点是灵活配置、运行速度快、性能稳定、安全可靠、具有跨平台性。因为是自由软件,人们需要在使用过程中不断完善性能、创新功能,一直在持续发展中。

2 学生管理系统设计

2.1 系统模块设计

学生信息管理系统以学生的信息数据为核心,进行整合归类、分级管理、精准定位。本文设计按照操作端口不同,具体分为管理员模块、教师模块和学生模块3个模块进行设计,系统模块设计如图1所示。

图1 系统模块设计

该系统不受时间和空间的限制,无论是管理员、教师还是学生都能通过普通浏览器登录该系统,选择所需功能进行操作,实现了信息互动和远程管理信息。

2.2 登录模块

系统需要对登录的用户权限进行验证来保证系统的稳定安全性,PHP内置的Session机制可以存储标识不同用户会话的信息,可以利用Session唯一特性在登录界面进行安全性验证,同时对不用登录身份的用户给予不同的操作权限,根据权限进行验证登录。所有用户为同一个登录界面,通过选择不同的用户类型(管理员、教师、学生)、输入账号(工号或学号)、初始密码(身份证号的后六位)和验证码,由系统判断所输入的信息是否存在与正确,信息完全匹配就可以成功进入不同的系统模块,否则返回登录界面。不同账号类型拥有不同的操作权限,每个账号都是系统最初设置好的,系统未设置注册功能,防止恶意注册的用户登录系统进行不安全的操作。教师模块和学生模块都有一个相同的功能,即成功登录系统后可以自行修改自己的登录密码。

2.3 管理员模块

在整个系统中,管理员角色拥有独立账号和密码,登录管理系统,拥有最高的管理权限,可以通过该模块操作系统中教师模块和学生模块中所有的功能,方便给教师与学生设置不同权限与功能。管理员首要任务为在系统中录入教师信息,并为每个教师分配独立的账号和密码,赋予教师管理学生信息的权限。为了确保系统的稳定安全使用,有效维护系统数据的一致性、系统性,只有管理员拥有管理数据库的权限,可以对数据库相关数据进行修改,有效保障数据库稳定安全,避免其他用户随意改变数据,导致系统数据不一致,出现混乱现象。

2.4 教师模块

教师登录系统时,选择教师用户类型,正确输入登录信息,即可进入教师模块。教师模块显示教师所教的班级,选择点击某个班级的链接,就可以显示该班级中所有的学生学号及姓名,点击某个学生学号就能够进入该学生的成绩、学籍库。

系统给教师分配了独立的登录账号和密码,在教师模块下,教师可以自行录入自己的信息及所教课程,也可以对课程录入成绩进行修改,还可以对学生信息进行查询、删除、修改、增加功能操作。

2.5 学生模块

学生登录系统时,选择了学生用户类型,正确输入登录信息,进入学生模块。在此模块下,学生可以查询自己的基本信息。学生的基本信息来自学生库,新生在入校时,管理员根据学生提交的学籍档案中的学生个人信息,在系统中录入所属系部及专业、班级与学号。每学期开学初,要求学生登录系统核实自己的个人信息,及时申请修改个人的变动信息,同时查看每学期课程的考核成绩,对于成绩只能查询不能修改,了解自己的学习情况,更好制订学习计划,调整学习方法。

3 学生管理系统实现

3.1 登录模块的实现

一个网页的背景颜色选择会影响整个页面的效果,登录界面颜色选择在蓝色中混入一点白色,整个页面给人一种清新、清爽、洁净的感觉,舒适度很好。登录界面是学生信息管理系统的入口,为管理员、教师和学生设置了权限,实现了不同权限登录不同模块功能。在数据库中创建了管理员账号和密码登录表、教师账号和密码登录表、学生账号和密码登录表3个表格。用户在登录页面选择不同的身份权限输入自己的账号和密码进行登录,系统需要获取页面的数据与数据库中的3个表格中已存在的信息进行相应匹配,只有完全匹配成功之后才可以进入系统,进入不同的用户模块进行相应的操作。在该系统的登录模块中,用户输入密码采用MD5进行加密处理,确保数据安全,系统对密码的内容从始至终一无所知。用户在登录页面输入密码时,通过比较MD5加密和已存在数据表里的密码值是否一致判断能否成功登录。

3.2 数据库的实现

每个功能模块的实现都需要数据库提供数据支撑,需要对数据库中数据表的数据进行增、删、改、查操作,访问数据库的频率比较高,增加了编写代码的工作量。如何有效地在系统设计中加快访问数据库的速度,减少数据库操作的代码重复工作量,可以利用面向对象封装的思想。将数据库的所有操作过程都设计成函数,封装成一个数据库类。

3.2.1 数据库的连接

在使用PHP操作MySQL数据库之前,PHP需要先与MySQL数据库服务器建立连接,需要按连接MySQL服务器、选择数据库、设置字符集3步顺序准确无误地完成。第一步,正确设置私有的数据库配置信息(主机名或IP、用户名、密码、数据库名、字符集),公共的构造方法实现数据库对象的初始化连接对象,私有的连接MySQL服务器方法中mysqli_connect()函数连接MySQL服务器。第二步,在连接MySQL服务器成功的基础上,利用构建好的私有的选择数据库方法中mysqli_connect()函数选择该系统的数据库。第三步,在前两步都成功的基础上利用私有设置字符集方法中mysqli_set_charset()函数将字符集设置为“utf8”。

3.2.2 数据的查询、增加、删除、修改操作

通过对数据进行查询、增加、删除、修改4大类SQL语句执行的结果详细分析,可以把它们分类为两大组:增加、删除、修改SQL语句为一组,该组共同的特性就是执行结果为成功或者失败。查询SQL语句单独为一组,但是查询结果还需要分为3种情况,即一维数组、二维数组和记录数。增加、删除、修改(insert,update,set,drop)SQL语句的操作实现采用编写公共的执行SQL语句的方法public function exec($sql),执行成功返回true,执行失败返回false。将传进来$sql语句转成小写,$sql=strtolower($sql);判断是不是select语句,先转换为小写,前6个字母全部提取与select对比,是select语句终止执行,否则返回执行的结果,return mysqli_query($this->link,$sql)。查询(select)的操作实现采用编写的私有的执行SQL语句的方法private function query($sql),结果集还需要进一步执行,所有设置为私有的,执行成功返回结果集,执行失败返回false。不是select语句终止执行,否则返回执行的结果(结果集对象),需要在类中进一步处理,return mysqli_query($this->link,$sql)。公共获取单行数据的方法public function fetchone($sql,$type=3),执行SQL语句,调用query()并返回结果集对象,return mysqli_fetch_array($result,$types[$type]),返回一维数组。Public function fetchall($sql,$type=3),return mysqli_fetch_all($result,$types[$type]),公共获取多行数据的方法,返回二维数组。获取记录数的方法public function rowCount($sql),返回记录数,return mysqli_num_rows($result)。

4 结语

学生管理工作是学校的核心工作,为了让工作智能化、科学化、高效化,本文基于PHP+MySQL+Apach组合技术进行了分析探讨,设计与实现了学生信息管理系统,有效解决了目前学生信息管理出现的问题。本系统还可以扩展其他功能模块,让学生信息管理系统更加完善。

猜你喜欢

语句账号管理员
我是小小午餐管理员
彤彤的聊天账号
施诈计骗走游戏账号
我是图书管理员
我是图书管理员
重点:语句衔接
可疑的管理员
精彩语句
Google Play游戏取消账号绑定没有Google账号也能玩
如何搞定语句衔接题