1、计算机与通信学院春季学期题 目:学生成绩管理系统 专业班级:软件工程基地班 姓 名:陶婷婷 学 号:10240541 目录一系统分析与设计11.1摘要11.2需求分析11.3系统功能分析21.4系统功能模块设计2二详细设计42.1数据库设计与实现42.2设计登录窗口62.3设计“学生成绩查询系统”模块82.4管理员窗口模块制作11三.优缺陷分析133.1长处133.2缺陷13一系统分析与设计1.1摘要在当今社会,互联网空前发展,给人们工作和生活带来了极大便利和高效。信息化,电子化已经成为节约运营成本,提高工作效率首选。考虑到当前大量公司人事管理尚处在手工作业阶段,不但效率低下,还经常由于管理不
2、慎而浮现纰漏。因而依照某些公司提供需求,设计此公司人事管理系统,以协助公司达到人事管理办公自动化、节约管理成本、提高公司工作效率目。PHP 独特语法混合了 C、Java、Perl 以及 PHP 自创新语法。 PHP安装它可以比 CGI 或者 Perl 更迅速执行动态网页。用PHP做出动态页面与其她编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记CGI要高许多;PHP还可以执行编译后裔码,编译可以达到加密和优化代码运营,使代码运营更快。PHP具备非常强大功能,所有CGI功能PHP都能实现,并且支持几乎所有流行数据库以及操作系统。本系统是以PHP设计语言和My
3、SQL数据库为工具综合测评系统,其开发环节重要涉及后台数据库建立和维护以及前端应用程序开发两个方面。重要实现功能是实现对学期班级综合测评一整套电子化操作;重要实现操作有:班级管理员注册,班级成员互评操作,班级管理员登录管理成绩,综合测评成果查询,账户密码修改。1.2需求分析近年来,随着中学办学规模越来越大,在校学生数也日益增多,随之而来是教务管理工作日趋复杂繁重,要耗费大量人力、物力,已愈来愈成为学校寻常管理工作一种瓶颈。学生成绩管理是教务、教学管理中一种重要构成某些,也是比较啰嗦工作。在学生成绩管理事务中,普通有成绩输入:对各年级各班各学期学生各科成绩进行输入;成绩记录:需要对每个学生成绩进
4、行解决,例如排名次,成绩汇总,成绩升降;成绩报表:将学生成绩以报表形式输出等等。每次考试都需要大量人力、物力,为了减轻中学生成绩管理工作量和实现当代化科学管理,特设计这个系统。并依照中学实际状况,制定如下数据和功能需求。1.3系统功能分析本阶段就是分析该系统重要功能以及它所解决顾客面临问题,最后由顾客确认该系统功能和用处。(1)、学生信息输入和存储,涉及学号、姓名、专业名、性别、出生日期、总学分和备注等。(2)、课程信息输入和存储,涉及课程号、课程名、开学时间、学时和学分等。(3)、对学生信息修改、增长、删除、修改以及定向查询等。(4)、对课程信息修改、增长、删除、修改以及定向查询等。(5)、
5、可以进行顾客添加和存储,涉及顾客名、密码、顾客权限。(6)、顾客输入顾客名和密码后系统依照其在顾客表注册权限进入不同应用系统。(7)、学生登录时系统依照其顾客名(即学号)进入相应学生成绩查询系统,可以进行本人所选课程成绩查询、打印以及所选课程信息,不同窗生顾客进入各自成绩查询系统避免了能查询其她学生成绩问题。(8)、教师登录时系统依照顾客名(这里顾客名与课程号相应即一名教师任教一门课)进入相应教师管理系统,可以进行该课程学生成绩录入、修改及置零。(9)、学生、教师和管理员登录密码都可以进行修改(10)、本系统界面色彩跳动不大布局简朴整洁。1.4系统功能模块设计 依照上述分析以及模块化程序设计规
6、定得如图所示功能模块图。成绩管理系统教师管理窗口管理员窗口学生成绩查询系统密码修改所选课程询密码修改所选课程成绩查选该课学生信息查选该课学生成绩密码修改学生信息输入、修改等课程信息输入、修改等顾客添加图 1.4.1 系统功能模块 二详细设计2.1数据库设计与实现 数据库构造好坏直接影响到系统实现效果和数据操作效率以及能否保证数据一致性、完整性和安全。因此数据库在一种信息系统中占有非常重要地位。1.数据库设计 依照学生成绩管理系统功能规定,通过度析系统要涉及有关实体以及要收集、存储和操纵数据信息,得到如图2.1所示系统E-R图。依照系统E-R图得到如下关系模式。学生基本信息(学号,姓名,专业名,
7、性别,出生日期,总学分,备注)。课程(课程号,课程名,开课学期,学时,学分)。成绩(学号,课程号,成绩,学分)。教师(教师号,课程号,课程名,姓名,性别,出生日期) 为了系统使用安全,要建立顾客管理,而顾客使用权限分为学生、教师和管理员三类,因而需要建立一种存储顾客信息关系。顾客(姓名,密码,权限)2.创立数据库 在php开发环境中打开数据库画板,然后依次建立如下各表。1)“学生”表 表名:xs 主键:xh各列表属性见表2-1。 表2-1 “学生”表属性列名数据类型宽度空值标记Xhchar6no学号Xmchar8no姓名Zymchar10yes专业名Xbbitno性别Datedateno出生日
8、期Totaltinyintyes总学分Bzchar20yes备注2)“课程”表表名:kc主键:kch各列表属性见表2-2表2-2 “课程”表属性列名数据类型宽度空值标记Kchchar3no课程号Kcmchar16no课程名Kkdatetinyintno开课学期Xsdatetinyintno学时Xftinyintyes学分3)“成绩”表 表名:xs_cj 主键:xh和kch 各列表属性见表2-3表2-3 “成绩”表属性列名数据类型宽度空值标记Xhchar6no学号kchchar3no课程号kcmchar10yes课程名cjtinyintyes成绩xftinyintyes学分4)“教师”表 表名:
9、jiaoshi 主键:jsh 各列表属性见表2-4表2-4 “教师”表属性列名数据类型宽度空值标记jshchar3no教师号kchchar3no课程号kcmchar16no课程名xmchar8no姓名xbbitno性别rqdateno出生日期5)“顾客”表 表名:dl 主键:yhm 各列表属性见表2-5 表2-5 “顾客”表属性列名数据类型宽度空值标记yhmchar6no顾客名mmchar6no密码qxchar10no权限6)“选课”表表名:xskc主键:xh和kch各列表属性见表2-6 表2-6 “选课”表属性列名数据类型宽度空值标记XhChar6No学号KchChar3N0课程号kcmch
10、ar10yes课程名各个表之间通过外键形成如图2.3所示关联关系。图2.1.1关联关系2.2设计登录窗口1.连接数据库数据库链接模块主代码:/数据库链接conn.php?php $dbcnx = mysql_connect(localhost,root,aaa);/连接MYSQL数据库,使用PHP函数方式,数据库顾客名和密码对的if (!$dbcnx) echo( 无法连接到数据库. );exit();mysql_select_db(zhcp);if (!mysql_select_db(zhcp)echo( 没有找到相应数据库 );exit(); mysql_query(set names u
11、tf8);?/数据库关闭clconn.php2.登录窗口设计创立登录窗口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)。各个控件大小位置按照图4.1调节 图2.2.1顾客名: 密码: 2.3设计“学生成绩查询系统”模块 1、系统主窗口如图2.3.1 图 2.3.12、其相应选单为图2.3.2图2.3.2(1)“密码修改”相应代码为open(w_mmxiugai)密码 input type=text name=p
12、assword value=/“关闭” 相应代码为int retret=MessageBox(提示,拟定退出?,exclamation!,YesNo!,2)if ret=1 then close(parentwindow)elsereturnend if(2)“所修课程” 相应代码为open(w_kc)close(parentwindow)w_kc.dw_1.settransobject(sqlca)w_kc.dw_1.retrieve(yh)(3)“课程成绩” 相应代码为open(w_xscj)close(parentwindow)w_xscj.dw_1.settransobject(sql
13、ca)w_xscj.dw_1.retrieve(yh)(4)“关于” 相应代码为open(w_zz)注意:这里w_mmxiugai、w_kc、cw_xscj、w_zz窗口是背面待建3、密码修改窗口如图2.3.3 该窗口被命名为w_mmxiugai(1) 【关闭】按钮为 close(parent) 图2.3.34、学生所选课程查询窗口如图2.3.4该窗口被命名为w_kc【返回】按钮clicked事件脚本为open(w_x1)close(parent) 图 2.3.4该窗口里数据窗口控件对象如图2.3.5 图2.3.55、学生所选课程成绩查询窗口为图2.3.6 图 2.3.6该窗口被命名为w_xs
14、cj 【返回】按钮为open(w_x1)close(parent)其中数据窗口对象如图2.3.7 图2.3.72.4管理员窗口模块制作该模块采用选项卡模式进行制作1、选项卡默认界面为密码修改2、课程管理窗口如图2.4.2数据窗口对象如图2.4.1 图2.4.1 图 2.4.2【增长】按钮代码为 $query=insertinto t_user(id,password,name,Email)values($id,$password,$name,$Email); mysql_query(SET NAMES GBK); if(mysql_query($query) echo url=main.php
15、;window.location.href=url; ; else echo 保存失败; 【删除】按钮代码为 $query = delete from t_user where id=$id; mysql_query(SET NAMES GBK); if(mysql_query($query) echo url=main.php;window.location.href=url; ; else echo 删除失败; 【保存】按钮代码为 dw_1.update() Messagebox(“提示”,”已存入数据库”)3、顾客管理窗口如图2.4.4 数据窗口对象如图2.4.3 图2.4.3 图2.4
16、.4三.优缺陷分析3.1长处1、 该系统最大长处就是一对一效应不论学生还是教师用自己帐号和密码登录后只会进入与自己信息有关窗口,学生只能查看自己课程和成绩,教师只能看选自己所专家课程学生信息以及对其成绩进行有关操作,2、 顾客登录以及密码修改时如果有操作错误系统会自动提示顾客,例如修改密码时两次新密码输入不一致系统就会提示。当不小心关闭某个窗口时系统也会有温馨提示看是不是真要关闭,再做进一步选取。3.2缺陷1、 该系统缺陷之一是功能不够强大,虽然可以进行学生、教师、课程信息录入但只是更新了相应表,例如单击“所有置零”后不会立即把效果显现出来必要重新打开才干看到效果。2、 在教师录入成绩时不但可以对成绩和学分录入、改动还能修改学号、课程号和课程,这些是不应当有改动。