1、目 录一、设计分析- 1 -1成绩管理系统的背景分析及必要性- 1 -2.成绩管理系统设计的功能需求及开发目标分析- 1 -3.运行环境及开发工具分析- 2 -二、程序结构- 2 -三、各模块的功能及程序说明- 3 -1 .用户验证模块- 3 -2 .班级管理模块- 3 -3.课程管理模块- 3 -4 .教师管理模块- 4 -5.学生管理模块- 4 -6.成绩管理模块- 4 -7.成绩查询模块- 4 -四、源程序- 4 -五、操作方法- 5 -1.conn.asp- 5 -2.index.asp- 6 -3.admin.asp- 7 -4.teacher.asp- 8 -5.student.a
2、sp- 8 -6.admin_class.asp- 8 -7.admin_course.asp- 9 -8.admin_teacher.asp- 9 -9.admin_student.asp- 9 -10.admin_results.asp- 9 -11.teacher_info.asp- 10 -12.teacher_student.asp- 10 -13.teacher_results.asp- 10 -14.student_info.asp- 10 -六、试验结果- 11 -七、设计体会- 15 -基于WEB的程序设计成绩管理系统设计报告一、设计分析1成绩管理系统的背景分析及必要性随着信
3、息技术的飞速发展,计算机和网络在学校的教育教学领域发挥着越来越重要的作用,学校管理、教师授课、学生学习已经离不开信息技术的支持。学生的成绩管理对于教师的学校的教学管理、教师的教学水平提高和学生的学习成绩进步来说都起着至关重要的作用。一直以来学生的成绩管理都要靠人工的方式来完成,是一个非常繁重的工作,使用人工计算和管理效率低、保密性差,而且历年的数据很不利于保存。使用计算机的数据处理功能对学生成绩进行信息化管理,可以实现数据的长期保存,而且检索迅速、安全性高、保存成本低、寿命长、存储数据量大,有着许多人工管理无法比拟的优势,可以减轻教师的工作压力。管理信息系统是进行信息的采集、存储、加工、维护和
4、使用的系统,其强大的功能已为人们深知,它已经融入了人们生活的各个领域,并发挥着越来越重要的作用。2.成绩管理系统设计的功能需求及开发目标分析本文中所论述的基于WEB学生成绩管理系统将计算机技术与传统的教育教学工作相结合,为用户提供实现学生成绩的录入、修改、查询、删除等操作,主要设计目标有:(1)系统具有安全性,只有授权的用户可以执行对数据的授权操作,未授权的用户不可以访问此系统;(2)系统具有实用性,使用ASP+ACCESS+IIS来实现,服务器架设方便,对运行环境要求较低,可以在网络上发布,方便多用户同时访问;(3)不同的用户登录后有不同的权限,管理员具有所有的权限,可以执行对教师、学生基本
5、信息的添加、修改、删除、查询等操作和对查询系统的设置;教师用户只能对其体所任教学科和年级的学生进行添加、修改、删除、查询和修改自己的基本信息等操作;学生用户登录后可以查询自己成绩、查询或修改个人基本信息。3.运行环境及开发工具分析该系统采用C/S模式,为了使成绩查询系统能够稳定、可靠地运行,需要配置一台硬件配置稍高一些的计算机做为服务器,需要安装Windows 2000/ 2003/2008等服务器版的操作系统,并安装Internet Information Server 4/5 服务,安装Microsoft Office的Access 2000/2003/2007数据库;客户机则可以使用普通
6、的PC,可以使用WINDOWS95、98/ME/2000/XP/VISTA操作系统,浏览器可以使用Internet Explorer6/7或Firefox等。(1)IIS。由于该系统需要在网络环境中运行,考虑到安装方便、配置容易、使用简单等因素,本系统使用微软的IIS来提供WEB服务。(2)ACCESS。数据库采用微软的ACCESS,它能使用类似于Excel电子表格的数据表示图来收集信息,对于数据库的结构和数据的内容一目了然,还可以将Excel中的数据导入到数据库中,所以使用ACCESS做为本系统的数据库。(3)ASP。由于本系统中的数据经常需要更新、修改,在查询时还需要使用到汇总、筛选等计算
7、的功能,所以选择Active Server Pages来开发系统的动态网页,使用它可以编写动态生成HTML的程序代码,将用户的需求通过ASP页传递到服务器中,由服务器进行相应的计算等处理后再生成HTML返回给该用户。使用ASP无须编译、代码容易编写,对客户端的浏览器要求低,而且可以使用VBScript脚本,执行速度快。(4)SQL。SQL语句简单易学,而且为用户提供了插入记录、修改记录、删除记录、数据查询、数据更新等功能,所以本系统使用SQL来完成数据的综合录入、修改、删除、查询等操作。二、程序结构本系统主要由用户验证、班级管理、课程管理、教师管理、学生管理、成绩管理、成绩查询7大模块组成。如
8、下图所示:Index.asp系统首页输入用户名及密码验证用户名及密码验证用户权限Admin.asp后台管理Teacher.asp教师页面Student.asp学生页面Admin_class.asp班级管理Admin_course.asp课程管理Admin_teacher.asp教师管理Admin_student.asp学生管理Admin_results.asp成绩管理Teacher_info.asp个人信息管理Teacher_student.asp学生管理Teacher_results.asp成绩管理Student_info.asp个人信息管理results.asp成绩查询三、各模块的功能及程
9、序说明1 .用户验证模块:该模块用于验证用户是否有权限使用该系统,同时读取该用户所在的用户组(管理员、教师、学生),并自动转向到其用户组所在的管理模块。2 .班级管理模块:该模块只有管理员有权限访问,管理员可以使用此模块对班级进行增加、修改、删除等操作。3.课程管理模块:该模块只有管理员有权限访问,管理员可以使用此模块对课程进行增加、修改、删除等操作。4 .教师管理模块:管理员用户在访问该模块时,可以教师进行增加、修改、删除等操作,并可以修改所有教师的基本信息、密码。教师用户在访问此模块时,只可以修改自己的基本信息和密码。5.学生管理模块:管理员和教师用户在访问该模块时,可以使用此模块对学生进
10、行增加、修改学生基本信息和密码、删除等操作。学生用户在访问该模块时,只可以修改自己的基本信息和密码。6.成绩管理模块:管理员可以使用此模块对学生的各学科成绩进行增加、修改、删除等操作,教师用户只可以增加、修改、删除自己所任教学科的学生的成绩。7.成绩查询模块:该模块管理员、教师和学生都有权限访问,管理员和教师可以查询所有学生的成绩,学生用户只能查询自己的成绩。四、源程序action=trim(request(action) username=trim(request(username) password=trim(request(password) group=trim(request(gro
11、up) if action=login then 因为表单和验证代码都在index.asp文件中,所以在提交表时用index.asp?action=login,在此处验证是否验证该表单的内容。 if username and password then str=select * from &group& where username=&username& and password=&password& set rs=conn.execute(str) if not rs.eof then 如果验证成功,则将用户名和用户组存放在session中 session(username)=usernam
12、e 存放用户名 session(group)=group 存放用户组 response.redirect(&group&.asp) 验证成功后,转向到该用户所在的用户组的管理页面。 else Response.Write(alert(用户名、密码或用户组错误!);location.href=index.asp;) 验证错误弹出提示 end if rs.close end if end if%并在其它各功能页面中验证用户是否已经登录和用户组的代码,如没有登录或其所在用户组不能访问则提示无权访问此页面,并返回到首页,代码如下:%if session(username)= then response
13、.write alert(您还没有登录,请回到首页登录!);window.location.href=index.aspend if if session(group)admin then group=session(group) response.write alert(您所在的用户组无权访问此页面!);window.location.href=&group&.aspend if%五、操作方法成绩查询系统由以下页面构成:conn.asp(数据库连接页面)、index.asp(系统首页、登录页面)、admin.asp(后台管理页面)、teacher.asp(教师页面)、student.asp(
14、学生页面)、admin_class.asp(班级管理页面)、admin_course.asp(课程管理页面)、admin_teacher.asp(管理员管理教师页面)、admin_student.asp(管理员管理学生页面)、admin_results.asp(管理员管理学生成绩页面)、teacher_info.asp(教师个人信息管理页面)、teacher_student.asp(教师管理学生页面)、teacher_results.asp(教师管理学生成绩页面)、student_info.asp(学生个人信息管理页面)、results.asp(成绩查询页面)。1.conn.asp(数据库连接
15、页面)本系统将数据库连接的代码统一存放在conn.asp中,为简化各功能页面的代码,方便各功能页面的数据库连接,在其它功能页面中使用来连接数据库。以下是conn.asp的内容:2.index.asp (系统首页、登录页面)在系统中管理员、教师和学生分别赋予了不同等级的权限,在登录时系统会连接到数据库相应的用户表中验证该用户输入的用户名和密码是否正确,如果正确则转向相应的管理页面,同时将一个用户名和用户组的值保存到SESSION中,如果不正确则弹出警告。如下图所示:主要代码如下:% 获取表单中的内容 action=trim(request(action) username=trim(reques
16、t(username) password=trim(request(password) group=trim(request(group) if action=login then 因为表单和验证代码都在index.asp文件中,所以在提交表时用index.asp?action=login,在此处验证是否验证该表单的内容。 if username and password then str=select * from &group& where username=&username& and password=&password& set rs=conn.execute(str) if not
17、 rs.eof then 如果验证成功,则将用户名和用户组存放在session中 session(username)=username 存放用户名 session(group)=group 存放用户组 response.redirect(&group&.asp) 验证成功后,转向到该用户所在的用户组的管理页面。 else Response.Write(alert(用户名、密码或用户组错误!);location.href=index.asp;) 验证错误弹出提示 end if rs.close end if end if%并在其它各功能页面中验证用户是否已经登录和用户组的代码,如没有登录或其所在
18、用户组不能访问则提示无权访问此页面,并返回到首页,代码如下:%if session(username)= then response.write alert(您还没有登录,请回到首页登录!);window.location.href=index.aspend if if session(group)admin then group=session(group) response.write alert(您所在的用户组无权访问此页面!);window.location.href=&group&.aspend if%3.admin.asp(后台管理页面)该页面有七个超链接,分别链接到:admin_
19、class.asp(班级管理页面)、admin_course.asp(课程管理页面)、admin_teacher.asp(管理员管理教师页面)、admin_info.asp(管理员管理页面)、admin_student.asp(管理员管理学生页面)、admin_results.asp(管理员管理学生成绩页面)、results.asp(成绩查询页面)。如下图所示:4.teacher.asp(教师页面)该页面有四个超链接,分别链接到:teacher_info.asp(教师个人信息管理页面)、teacher_student.asp(教师管理学生页面)、teacher_results.asp(教师管理
20、学生成绩页面)、results.asp(成绩查询页面)。如下图所示:5.student.asp(学生页面)该页面有两个超链接,分别链接到:student_info.asp(学生个人信息管理页面)、results.asp(成绩查询页面)。如下图所示:6.admin_class.asp(班级管理页面)为方便数据录入,系统将班级单独存放在数据库的一张表中,在录入时读取该表中的数据并以下拉菜单的形式显示出来,方便使用也可以避免录入时由于全角/半角等原因导致的错误数据。该页面只有管理员可以访问,用来添加、修改、删除班级信息。如下图所示:7.admin_course.asp(课程管理页面)课程管理页面只有
21、管理员可以访问,用来添加、修改、删除课程信息。并在录入页面以下拉菜单的形式显示出来,方便使用。如下图所示:8.admin_teacher.asp(管理员管理教师页面)该页面为管理员提供添加、修改、删除教师信息的功能,管理员可以更改教师的任教班级和学科。如下图所示:9.admin_student.asp(管理员管理学生页面)该页面为管理员提供添加、修改、删除学生信息的功能,在该页面中可以点击“所在班级”下拉菜单,筛选出某个班级的学生列表。如下图所示:10.admin_results.asp(管理员管理学生成绩页面)该页面为管理员提供添加、修改、删除学生成绩的功能,并可以使用“所在班级”、“课程”
22、、“学期”为条件进行多条件筛选。如下图所示:11.teacher_info.asp(教师个人信息管理页面)在该页面中教师用户可以修改自己的基本资料和密码等信息,为了实现教师只能录入其所任教班级和学科的成绩,在此页面中教师不能更改自己的任教班级和学科。如下图所示:12.teacher_student.asp(教师管理学生页面)该页面为教师提供添加、修改、删除其所任教班级、学科的学生信息功能。如下图所示:13.teacher_results.asp(教师管理学生成绩页面)该页面为教师提供添加、修改、删除学生成绩的功能,教师用户可以为其所任教班级和学科的学生添加、修改、删除成绩。如下图所示:14.s
23、tudent_info.asp(学生个人信息管理页面)学生可以通过该页面修改自己的基本资料和密码,其中所在班级一项不可以修改。如下图所示:六、试验结果在该页面中主要完成对学生成绩的查询,管理员和教师可以按学期、姓名、学号、学科、分数段等条件查询所有学生的成绩,学生用户只能按学期、学科、分数段条件查询自己的成绩。管理员和教师用户查询成绩页面如下图所示:学生用户查询成绩页面如下图所示:该页面的主要代码如下: 将表单内容提交到当前页 读取数据库中学期表中的数据,生成下拉菜单提供给用户选择请选择学期option value=暂无学期%if session(group)student then% 判断用
24、户是否是学生用户,如果是学生用户则不显示下面的表单 请选择班级 option value=暂无班级 用户组判断结束请选择课程option value=暂无课程 分数段下拉菜单-1请选择100分90分80分70分60分50分40分30分20分10分0分 至 分数段下拉菜单-2请选择100分90分80分70分60分50分40分30分20分10分0分%if session(group)student then% 判断用户是否为学生用户,如果是学生用户则不显示下面的表单 学号 学生姓名 结束判断 查询按钮 重选按钮 表单结束在进入该页面后,首页判断用户所在的用户组,并根据其用户组的权限设置是否显示“班
25、级”、“学号”、“学生姓名”等高级筛选项。七、设计体会这次设计报告让我充分认识到小组合作的重要性,只有分工协作才能保证整个项目的有条不絮。以前一直以为有了代码就可以了,但这种思想是错误的。每一个阶段的工作都要做足而且还要结合一定的开发模型或方法才能最大程度的保证软件产品的开发进度、产品质量。如果违反这些客观规律都会可能导致最终的失败。这次是将我所学的理论知识与实际运用的过程,开始出现了一些问题,走了许多弯路,在此期间,但通过上网搜索和询问同学把困难解决了。写的过程中遇到了些实际问题,如书写格式不对造成编译错误,更严重的是一些逻辑性错误,这些都反映出自己学习得不扎实,和自己的书写习惯不好,这也提醒我们在以后的编程中要时时小心步步留意。第15页共15页