admin 管理员组文章数量: 1086019
2024年4月26日发(作者:imgplay专业版从哪下载)
PHP学生成绩查询及分析系统制作
PHP学生成绩查询及分析系统制作
【摘要】本系统是中学一线教师制作的成绩查询及分析的网络程序。程序为B/S模式,程序
语言为PHP,数据库为Mysql。可跨平台运行,经多平台测试,可运行于各种linux
(CentOS/Debian/Ubuntu)、FreeBSD及Windows(WindowsXP/Win7/Windows2003)操作系统,
建议使用Linux平台,效果更好。主要功能有:查询学生个人及全班历次成绩;进行班级及
年级成绩分析(平均分、及格率、优秀率等);可显示学生成绩变化曲线图;所有查询及分析
表格均可以直接输出为Excel格式,方便保存及修改。
【关键词】成绩查询 成绩分析 PHP+Mysql
【正文】
在2009年9月份开学后,我校高三年级进行了第一次月考。月考后,许多高三班主任使
用Excel分析本班学生的历次成绩数据,感到非常麻烦。于是,笔者在教学之余开始制作适
用于全校所有年级的网络成绩查询系统。两年多来,经过广大老师们的试用,提出了许多很
好的建议,目前网络程序的功能已经比较完善,成为我校老师、年级主任查询及分析学生成
绩的好帮手。为更好的测试、完善本程序,也为了方便其他中学使用,本程序已经开放源代
码,成为一个开源程序,可在程序主页(/phpcj/)下载使用。下面就此
PHP网络程序的功能及制作思路作一简要说明。
一、网络程序运行的平台
我校程序运行的平台为接入校园局域网的LNMP(Linux+Nginx+Mysql+PHP)服务器。
其中的操作系统采用Ubuntu Server(Linux操作系统的一种),配置了高效的Nginx作为网
络服务软件,数据库使用Mysql,用PHP语言进行网络编程。以上所采用系统及软件均是免
费的开源程序,稳定、安全、高效,无软件成本。
[1]
另外,由于PHP网络程序可移植性好,
经测试,完全可以运行于各版本的Windows平台上。目前程序在一台256M内存的linux旧主
机上运行良好。
二、成绩查询系统的主要功能:
1、可以查询单个、全班或年级前N名学生的历次考试成绩,并可显示其年级名次变化曲
线图。查询结果如下:
初中2007 级1班 宋×× 同学初三历次考试成绩如下:
考试
年班 语数数英英物 物化化历历政政
语文 总分
级 级 排 学 排 语 排 理 排 学 排 史 排 治 排
96 40 85 188 108 34 92 82 90 55 90 74 93 51 654
96 49 88 224 110 24 92 41 94 59 93 38 83 72 656
95 54 93 193 110 12 83 153 96 39 82 112 81 93 640
88 52 74 144 110 14 88 123 89 94 81 124 97 13 627
82 98 81 183 113 20 46 83 54 95 53 19 52 82 482
0909初三月考一 56 1
0911初三月考二 62 1
0912初三月考三 73 1
1002初三月考四 55 1
1003初三基摸考试 70 2
1004初三模拟考试 27 1 101.5 23 104 79 108 10 38 135 48 65 48 42 55 6 502.5
宋××同学初三历次成绩总名次变化曲线图如下:
1
PHP学生成绩查询及分析系统制作
考虑到对学生个人成绩分析的多种需求,其中的显示选项如下:
其中的选项有:是否显示成绩变化曲线图、是否显示各科年级及班级排名、是否显示全
部科目、初高三的特殊显示(只显示初高三成绩还是全部成绩)、显示本班全部学生还是单个
学生等。另外,其中的打印按纽强制不显示曲线图,供在网页中直接打印或将其复制到Excel
中编辑后再进行打印。
2、成绩导入网站数据库后,程序会自动进行各种成绩统计并输出,供各位老师查询。如
成绩分析表(任课教师的红色字体为班主任):
2010年05月高二期中(文)成绩分析表
平均 分
及格率
优秀率
最高分
最优生
平 均分
及格率
优秀率
最高分
最优生
任课教师
...
班级
校
6班
...
语文
89.89
51.74%
0%
116
杨同学/闫
同学
82.19
24.56%
0%
112
杨同学
李老师
...
数学
55.90
11.63%
0.58%
133
冯同学
47.44
3.51%
0%
105
于同学
李老师
...
英语
67.48
23.26%
0.58%
133.5
王同学
55.53
8.77%
0%
105
赵同学
魏老师
...
历 史
58.35
50.58%
5.23%
91
王同学
50.09
28.07%
1.75%
86
杨同学
赵老师
...
地理
31.18
2.91%
0%
69
杨同学
26.33
3.51%
0%
69
杨同学
张老师
...
政治
61.24
52.91%
4.65%
92
原同学
54.23
28.07%
0%
76
梁同学
李老师
...
总分
364.04
566.5
冯同学
315.81
505.5
杨同学
...
家长会成绩条,如下表:
初中2007级1班(1004初三模拟考试)成绩条
年级
27
年级
55
班级
1
姓名
宋同学
语 文
101.5
数学
104
英语
108
物理
38
化学
48
历史
48
政治
55
总分
502.5
班级
2
姓名
齐同学
语文
95.5
数 学
99
英语
99
物理
48
化学
51
历史
53
政治
41
总分
486.5
3、分段统计
各年级可按不同的分数段统计各班人数,其中分段的步长值可以任意设置,如100分、
10分等,而且最高及最低分数段的数值可从数据中自动读出。如下表:
2010年05月高一期中分段统计表
2
PHP学生成绩查询及分析系统制作
分数线
700以上
600以上
500以上
400以上
300以上
200以上
200以下
合计
年 级 1班 2班 3班 4班 5班 6班 7 班 8班
7
75
173
278
371
386
2
388
0
5
25
40
45
45
0
45
0
0
1
14
41
50
1
51
0
10
26
46
47
47
0
47
0
0
2
12
44
47
1
48
0
4
21
44
46
46
0
46
0
0
1
20
46
49
0
49
6
28
48
52
52
52
0
52
1
28
49
50
50
50
0
50
4、所有查询及分析结果均可以直接输出为设置好一定打印格式的Excel文件,方便老师
们进行保存或编辑。
5、除此还有各种定制输出的表格,如各班成绩单、年级和班级名次变化表等。
三、程序设计
网络程序主要分三个模块:数据库部分、后台数据处理和前台数据输出。
1、数据库的设计。
数据库设计是否合理,关系到程序的查询效率及各种功能的实现。本程序的数据库采用
Mysql数据库,数据结构设计如下:
成绩数据库“data”下有数据表:“chengji”、“jiaoshi”、“c2007_0912”、“g2007_0912”……
说明:其中的“chengji”数据表用来记录各年级历次成绩的相关信息,如考试名称、年级、
班级数目、考试科目、成绩数据表名等信息;“jiaoshi”数据表用来记录当前各年级及每次考
试的任课老师、班主任信息;“c2007_0912”形式的数据表用来记录成绩数据,表示“初中2007
级学生09年12月”的考试成绩。
2、程序后台成绩数据添加及处理模块。由于程序后台功能不太复杂,因此只用了一个
“”文件实现。
程序管理员将含有学生姓名、班级及各科分数的Excel表格通过网站后台程序上传,简
单添加相关考试信息(如考试名称、班级信息、各科满分分数等)后,程序会自动实现以下
过程:①添加每个学生的总分及各科的年级、班级排名;②根据已有信息添加任课老师、班
主任等信息;③自动读出上一次考试信息,并计算本次考试与上次考试的年级和班级名次变
化等。另外,各年级的考试信息也可以随时修改。
3、前台网页数据输出模块,用一个“”文件实现,这也是程序最关键的部分。
计算机连上学校局域网后,不用安装软件,用浏览器通过学校内网ip地址或机器名访问程序
服务器即可进行成绩的查询,如:192.168.1.109。
本模块又包含几个子模块:查询学生的历次成绩、显示最近一次考试各年级的各种分析
表(成绩分析表、名次变化表、家长会成绩条、分段统计表等)、历次成绩表和名次变化曲线
图等模块。各子模块的实现思路如下:
⑴历次成绩查询,以查询全班学生历次成绩为例。首先在最近一次考试的成绩数据中读
3
PHP学生成绩查询及分析系统制作
出所有学生的姓名,然后依次以每个学生姓名为关键字,加上班级作为次要关键字(防止同
年级中出现重名现象),在本年级所有成绩表中去读出此学生的成绩并显示。
⑵成绩分析表。这个实现起来就比较简单了,直接用sql统计命令,输出年级及各班的
平均分、及格率、优秀率、各科最高分及最高分的学生姓名等信息。如果“jiaoshi”数据表
中有任课老师信息,则把任课老师信息也显示出来。
⑶其他各种统计表的输出则根据不同的需求,用sql命令读取成绩数据表中的数据即可。
⑷名次变化曲线图源代码来自网上,对其进行了优化及美化后,添加了一些实用的显示
功能,如可显示年级、考试时间、最好及最差名次等信息。
四、本网络程序的优点
1、简单高效
硬件方面:只需要一台能联网的闲置主机即可,操作系统安装完成后,不需要键盘、鼠
标和显示器,插上网线即可通过网络进行管理。
软件方面:所用软件均为开源的免费软件,安全、高效。而且PHP程序运行效率高,优
于asp及开发的程序。
2、前后台操作简单
后台操作:程序平台搭建好以后,管理员只需将每次考试后的成绩数据上传,同时添加
简单的考试信息即可。在数据上传后,程序会自动将成绩数据进行各种处理,如对学生进行
排名、添加任课教师信息、与上一次考试成绩进行比较等一系列操作。
前台浏览:对于使用者——老师来说,只需要用浏览器打开程序主页,就能查询或浏览
各种成绩分析结果。
3、由于设计者是教学一线的老师,更加熟悉班主任和老师们的需求,所制作的功能实用
性强。
五、网络程序的运行效果评价
由于我校各年级班级数量相对较少,每个年级最多10个班,目前程序放在一台256内存
的旧主机上,运行情况良好。而程序对更多班级的数据处理效率暂未测试。但从现在的运行
情况来看,在后台上传数据并进行10个班级数据处理时,256M内存的主机需时半分钟左右。
如果数据量加大的话,采用增加内存的方式,应该可以实现大量数据的快速处理。另外,程
序的最关键环节——前台成绩数据输出显示暂无法进行压力测试,主要是看高并发情况下服
务器能否承受(如百人以上同时点击),笔者预测,通过采用更高配置的linux主机,完全可
以承受,程序运行应无大碍。
总之,本网络程序是在结合我校实际情况基础上开发制作的,功能还可以进一步拓展,
以期能减轻班主任和年级主任分析成绩的负担,方便任课老师了解学生、关注学生成绩变动,
能更好、更有针对性的对学生进行辅导、教育。
【参考文献】
[1] /view/
4
版权声明:本文标题:PHP学生成绩查询及分析系统制作 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1714063242a663951.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论