php学生成绩管理系统(模板)
计算机与通信学院
2013年春季学期
题目:学生成绩管理系统专业班级:软件工程基地班姓名:陶婷婷
学号:
目录
一.系统分析与设计 (1)
摘要 (1)
需求分析 (1)
系统功能分析 (2)
系统功能模块设计 (2)
二.详细设计 (4)
数据库设计与实现 (4)
设计登录窗口 (6)
设计“学生成绩查询系统”模块 (7)
管理员窗口模块的制作 (10)
三.优缺点分析 (12)
优点 (12)
缺点 (12)
一.系统分析与设计
摘要
在当今社会,互联网空前的发展,给人们的工作和生活带来了极大的便利和高效。信息化,电子化已经成为节约运营成本,提高工作效率的首选。考虑到当前大量企业的人事管理尚处于手工作业阶段,不但效率低下,还常常因为管理的不慎而出现纰漏。因此根据部分企业提供的需求,设计此企业人事管理系统,以帮助企业达到人事管理办公自动化、节约管理成本、提高企业工作效率的目的。
PHP 独特的语法混合了C、Java、Perl 以及PHP 自创新的语法。PHP安装它可以比CGI 或者Perl 更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI 的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
本系统是以PHP设计语言和MySQL数据库为工具的综合测评系统,其开发步骤主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。主要实现的功能是实现对学期班级综合测评的一整套电子化操作;主要实现的操作有:班级管理员注册,班级成员互评操作,班级管理员登录管理成绩,综合测评结果查询,账户密码修改。
需求分析
近年来,随着中学的办学规模越来越大,在校学生数也日益增多,随之而来的是教务管理工作日趋复杂繁重,要耗费大量人力、物力,已愈来愈成为学校日常管理工作的一个瓶颈。学生成绩管理是教务、教学管理中一个重要组成部分,也是比较烦琐的工作。在学生成绩管理事务中,一般有成绩输入:对各年级各班各学期学生的各科成绩进行输入;成绩统计:需要对每个学生的成绩进行处理,例如排名次,成绩汇总,成绩升降;成绩报表:将学生成绩以报表形式输出等等。每次考试都需要大量的人力、物力,为了减轻中学生成绩管理
工作量和实现现代化的科学管理,特设计这个系统。并根据中学的实际情况,制定以下数据和功能需求。
系统功能分析
本阶段就是分析该系统的主要功能以及它所解决的用户面临的问题,最后由用户确认该系统的功能和用处。
(1)、学生信息的输入和存储,包括学号、姓名、专业名、性别、出生日期、
总学分和备注等。
(2)、课程信息的输入和存储,包括课程号、课程名、开课时间、学时和学分
等。
(3)、对学生信息的修改、增加、删除、修改以及定向的查询等。
(4)、对课程信息的修改、增加、删除、修改以及定向的查询等。
(5)、可以进行用户的添加和存储,包括用户名、密码、用户权限。
(6)、用户输入用户名和密码后系统根据其在用户表注册的权限进入不同的应
用系统。
(7)、学生登录时系统根据其用户名(即学号)进入对应的学生成绩查询系统,
可以进行本人的所选课程成绩的查询、打印以及所选课程的信息,不同的学生用户进入各自的成绩查询系统避免了能查询其他学生成绩的问题。
(8)、教师登录时系统根据用户名(这里用户名与课程号对应即一名教师任教
一门课)进入对应的教师管理系统,可以进行该课程学生成绩的录入、修改及置零。
(9)、学生、教师和管理员的登录密码都可以进行修改
(10)、本系统界面色彩跳动不大布局简单整洁。
系统功能模块设计
根据上述的分析以及模块化程序设计要求得如图所示的功能模块图。
图系统功能模块
二.详细设计
数据库设计与实现
数据库结构的好坏直接影响到系统的实现效果和数据操作效率以及能否保证数据的一致性、完整性和安全。所以数据库在一个信息系统中占有非常重要的地位。
1.数据库设计
根据学生成绩管理系统的功能要求,通过分析系统要涉及的相关实体以及要收集、存储和操纵的数据信息,得到如图所示的系统E-R图。根据系统E-R图得到以下关系模式。
学生基本信息(学号,姓名,专业名,性别,出生日期,总学分,备注)。
课程(课程号,课程名,开课学期,学时,学分)。
成绩(学号,课程号,成绩,学分)。
教师(教师号,课程号,课程名,姓名,性别,出生日期)
为了系统的使用安全,要建立用户管理,而用户使用权限分为学生、教师和管理员三类,因此需要建立一个存储用户信息的关系。
用户(姓名,密码,权限)
2.创建数据库
在php开发环境中打开数据库画板,然后依次建立以下各表。
1)“学生”表
表名:xs
主键:xh
各列表属性见表2-1。
表2-1 “学生”表的属性
列名数据类型宽度空值标识
Xh char6no学号
Xm char8no姓名
Zym char10yes专业名
Xb bit no性别
Date date no出生日期Total tinyint yes总学分
Bz char20yes备注
2)“课程”表
表名:kc
主键:kch
各列表属性见表2-2
表2-2 “课程”表的属性
列名数据类型宽度空值标识
Kch char3no课程号Kcm char16no课程名Kkdate tinyint no开课学期Xsdate tinyint no学时
Xf tinyint yes学分3)“成绩”表
表名:xs_cj
主键:xh和kch
各列表属性见表2-3
表2-3 “成绩”表的属性
列名数据类型宽度空值标识
Xh char6no学号
kch char3no课程号kcm char10yes课程名
cj tinyint yes成绩
xf tinyint yes学分4)“教师”表
表名:jiaoshi
主键:jsh
各列表属性见表2-4
表2-4 “教师”表的属性
列名数据类型宽度空值标识
jsh char3no教师号kch char3no课程号kcm char16no课程名xm char8no姓名
xb bit no性别
rq date no出生日期5)“用户”表
表名:dl
主键:yhm
各列表属性见表2-5
表2-5 “用户”表的属性
列名数据类型宽度空值标识
yhm char6no用户名mm char6no密码
qx char10no权限6)“选课”表
表名:xskc
主键:xh和kch
各列表属性见表2-6
列名数据类型宽度空值标识Xh Char6No学号Kch Char3N0课程号kcm char10yes课程名各个表之间通过外键形成如图所示的关联关系。
图关联关系
设计登录窗口
1.连接数据库
数据库链接模块主代码:
/P>" );exit();}
mysql_select_db("zhcp");
if (!@mysql_select_db("zhcp"))
{echo( "
没有找到对应的数据库
" );exit();}mysql_query('set names utf8');
>
录窗口设计
创建登录窗口w_dl,调节大小,在窗口上放置1个图片(p_1)
、3个静态文本(st_1、st_2、st_3)、2个单行编辑器(sle_1、sle_2)、3个单选钮(rb_1、rb_2、rb_3)、2个命令按钮(cb_1、cb_2)。
各个控件大小位置按照图调整
图用户名:
设计“学生成绩查询系统”模块
1、系统主窗口如图
图、其对应的选单为图图密码修改”对应的代码为open(w_mmxiugai)
int ret
ret=MessageBox("提示","确定退出",exclamation!,YesNo!,2)
if ret=1 then
close(parentwindow)
else
return
end if
(2)“所修课程”对应的代码为open(w_kc)
close(parentwindow)
课程成绩”对应的代码为open(w_xscj)
close(parentwindow)
(4)“关于”对应的代码为open(w_zz)
注意:这里的w_mmxiugai、w_kc、cw_xscj、w_zz窗口是后面待建的
3、密码修改窗口如图该窗口被命名为w_mmxiugai
(1)【关闭】按钮的为
close(parent)
图、学生所选课程查询窗口如图该窗口被命名为w_kc
【返回】按钮的clicked事件脚本为
open(w_x1)
close(parent)
图该窗口里的数据窗口控件的对象如图
图、学生所选课程成绩查询窗口为图
图该窗口被命名为w_xscj
【返回】按钮为
open(w_x1)
close(parent)
其中的数据窗口对象如图
图管理员窗口模块的制作
该模块采用选项卡的模式进行制作
1、选项卡默认界面为密码修改
2、课程管理窗口如图数据窗口对象如图
图
图【增加】按钮的代码为
$query="insertinto
t_user(id,password,name,Email)values('$id','$password','$name','$Email')";
mysql_query("SET NAMES GBK");
if(mysql_query($query)){
echo "