基于PHP+MySQL_学生成绩管理系统论文
课程设计报告
题目:学生成绩管理系统
学 号:
专 业 院 系: 指导老师: 完成时间:
信息工程学院制
目录
一 课题意义 .............................................. 3 1.1 课题简介 ......................................... 3 1.2 项目开发的目标 ................................... 3 二 需求分析 .............................................. 4 2.1 需求分析 ......................................... 4 2.2 系统设计分析 ..................................... 4 2.2.1 用户功能区 .................................. 5 2.2.2 管理员功能区 ................................ 5 三 系统设计 .............................................. 6 3.1 各个实体的局部ER 图 ............................... 6 3.2 数据库逻辑结构设计 ............................... 7 3.3 系统功能模块图 .................................... 9 3.3.1总体设计...................................... 9 3.3.2 学生用户模块 ................................ 9 3.3.3 管理员模块 ................................. 10 四 详细设计 ............................................. 10 4.1 系统前台 ........................................ 10 4.2 系统后台 ........................................ 12 五 总结 ................................................. 15 六、参考文献 ............................................ 15
一 课题意义
1.1 课题简介
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。学生成绩信息的管理是不容出错的,其学生基本信息、成绩管理等这些琐碎而又细致的工作,工作量是很大的,而且也不容许出错。如果是手工管理这些的话,那将耗费工作人员大量的时间和精力。用计算机来管理这些信息是非常方便,而且出错率小,可靠性高,查找方便,存储量也大。这些优点能够极大地提高对学生成绩管理的效率, 也是管理趋向信息化重要条件。本系统是弥补某些学校成绩管理的不足,创建的一套行之有效的计算机成绩管理的方案。
1.2 项目开发的目标
建立学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生成绩维护工作流程的系统化、规范化和自动化。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:
(1)系统应具有实用性、可靠性和适用性,同时注意到先进性。 (2)不同用户有不同的查询和修改权限, 防止非法查询, 非法修改。 (3)方便用户的操作,尽量减少用户的操作。
二 需求分析
2.1 需求分析
学生成绩管理系统对于学校管理学生成绩是很必要的。学校可以通过成绩管理系统来发布,管理成绩,学生可以通过网络来访问学生成绩管理系统来查询自己的成绩,管理系统会很详尽的记录保存学生的各科成绩。目前许多学校都有自己的成绩管理系统。
2.2 系统设计分析
随着这些年电脑计算机的速度质的提高,成本的下降,IT 互联网大众趋势的发展。我 们使用电脑的高效率才处理数据信息成为可能。学生学籍管理系统的出现,正是管理人员 与信息数据,计算机的进入互动时代的体现。友好的人机交互模式,清晰简明的图形界面, 高效安全的操作使得我们对成千上万的信息的管理得心应手。通过这个系统, 可以做到信息的规范管理, 科学统计和快速的查询, 从而减少管理方面的工作量。毋庸置疑, 切实有效地把计算机管理引入学校教务管理中, 对于促进学校管理制度, 提高学校教学质量与办学水平有着显著意义。
学生成绩管理工作是高校教育工作的一项重要内容。教务管理工作是指学校管理人员按 照一定教育方针,运用先进的管理手段,组织、协调 、指挥并指导各用户活动,以便高效 率、高质量地完成各项教学任务,完成国家所制定的教育目标。学生成绩管理工作是学校教 学工作的中枢,是保证高校教学机制正常运转的枢纽,它是一项目的性、计划性、适用性、 创造性和科学性很强的工作。学生成绩工作关系到高校教学秩序的稳定。
学生信息管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便, 易用性强,图形界面清晰明了。学生成绩管理信息系统的主要任务是对高校学生的考试成绩 进行管理,从而方便任课教师、辅导员、学生能及时准确地查阅到考试的成绩数据。JA V A 是Windows 系统下的可视化集成开发工具,提供了强大的可视化组件功能,使程序员能够快速、高效地开发出Windows 系统下的应用程序,特别是在数据库和网络方面,JA V A 与其它开发工具相比更是胜出一筹。该软件用java 语言编写,用MYSQL 数据库作为后台的数据库进行信息的存储,用SQL 语句完成学生学籍信息的添加,查询,修改,删除的操作以及成绩的录入,修改,删除等。用ODBC 驱动实现前台Java 与后台SQL 数据库的连接。SQL 数据库高效安全,两者结合可相互利用各自的优势。
学生成绩管理子系统需要解决的问题就是尽量利用学生成绩管理系统现有的软硬件环境,采用结构化生命周期开发方法用结构化生命周期开发方法开发一个系统,将整个开发过程划分为5个依次连接的阶段。①系统规划阶段:主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。②系统分析阶段:主要任务是对组织结构与功能进行分析,理清学生成绩输出流程和数据流程的处理,并且将学生成绩输出流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。 ③系统设计阶段:主要任务是确定系统的总体设计方案、划分子系统功能、确定共享数据的组织,然后进行详 细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。④ 系统实施阶段:主要任务是讨论确定设计方案、对系统模块进行调试、进行系统运行所需数
据的准备、对相关人员进行培训等。 ⑤系统运行阶段:主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、 调整。
本次设计首先调查系统的需求并进行分析整理,用文字与图形工具相结合的方法,描述 了系统的功能需求,以防止与用户沟通时产生理解上的二义性。然后在系统需求分析的基础 上进行了系统模块的划分及模块层次关系的确定,对每个模块功能进行了详细的论述,并介绍了数据库的设计过程;接下来对系统进行详细设计,包括向各个界面添加组件及添加代码,并进行单元测试;最后对系统进行集成测试并调试。
2.2.1 用户功能区
1. 学生拥有登陆账号(学号)以及密码 2. 学生通过输入账号密码登陆管理系统 3. 学生可以查询成绩 4. 学生可以修改登录密码 5. 学生可以修改密码问题和答案
2.2.2 管理员功能区
1. 管理员拥有登陆账号(学号)以及密码 2. 管理员通过输入账号密码登陆管理系统 3. 管理员可以添加学生信息 4. 管理员可以删除学生信息 5. 管理员可以查看所有学生信息 6. 管理员可以添加课程信息 7.管理员可以添加学生成绩 8. 管理员可以删除学生成绩 9. 管理员可以修改学生成绩
三 系统设计
3.1 各个实体的局部ER 图
图3-1 学生E-R 图
图3-2 课程E-R 图
图3-3 管理员E-R 图
3.2 数据库逻辑结构设计
本系统数据库为:student ,其中包含了四个MySQL 数据表来实现对数据的存储、调用。以下为具体数据表模式:
⑴ 【管理员表】(管理员ID 、管理员密码)
⑵ 【学生表】(学生、姓名、密码、性别、年龄、系别、提示问题、提示答案) ⑶ 【课程表】(课程号、课程名)
⑷ 【成绩表】(学号、课程号、课程名、成绩)
其中,用下划线标出的属性为表的主键属性。各表的具体设计如表4-1~表4-4所示。
1. admin 表
admin 表存放管理员登录名和密码。
表3-1 admin 表
2.stuinfo 表
学生所有的信息都存放在些表中。
表3-2 student 表
3. course 表
course 表存放课程号,课程名。
表3-3 course 表
4.Sreport 表
sreport 表存放学生成绩。
表3-4 sreport 表
3.3 系统功能模块图 3.3.1总体设计
根据学生成绩管理系统的功能需求,进行系统分析设计。系统功能模块图如图3-4所示:
图3-4 功能模块图
3.3.2 学生用户模块
学生用户模块:学生可以通过学号密码登录。学生不仅可以查看各科最新成绩,还可以修改个人信息。模块图如图3-5所示:
图3-5 学生功能
3.3.3 管理员模块
管理员模块:管理员管理模块也就是网站的后台,主要工作是负责对前台模块的管理与维护。包含管理学生档案、管理学生成绩、管理课程。模块图如图3-6所示:
图3-6 管理员功能
四 详细设计
4.1 系统前台
学生登陆采用POST 方式提交表单,代码如下:
登陆成功后显示各科成绩等。具体代码如下:
$result=mysql_query("select * from sreport where sno='$sno'");
$rows=mysql_num_rows($result); for($i = 0; $i
$row=mysql_fetch_row($result); ?>
}
4.2 系统后台
管理员输入管理员名称和密码,进入系统后台。 检验管理员账号的代码如下:
$sql="select *from admin where id='$id'"; $result=mysql_query($sql); $row=mysql_fetch_row($result);
删除成绩的具体代码 代码:
include('conn.php'); $sno=$_GET['id'];
$sql="delete from student where sno='$sno'"; mysql_query($sql);
$sql="delete from sreport where sno='$sno'"; mysql_query($sql);
echo "";
echo ""; ?>
具体实现代码为:
include('conn.php'); $a=$_POST['sno']; $b=$_POST['sname']; $c=$_POST['sage']; $d=$_POST['ssex']; $e=$_POST['sdept'];
if(!$a || !$b || !$c|| !$d || !$e )
die (",
"); $sql="select * from student where sno='$a'"; $result=mysql_query($sql); $row=mysql_fetch_row($result); if ($a==$row[0])
die (",
");
$sql="insert into student values ('$a','$b','$c','$d','$e','000000','','')"; mysql_query($sql);
echo "";
echo ""; ?>
显示所有的学生信息 , 可以删除任意信息, 每页显示8条记录 具体代码如下:
$page=$_GET['page']; include('conn.php');
$sql="select *from student;"; $pagesize=8;
$result=mysql_query($sql); $row=mysql_fetch_row($result); $rows=mysql_num_rows($result); if($rows%$pagesize==0)
$total=(int)($rows/$pagesize); else
$total=(int)($rows/$pagesize)+1; if(isset($_GET['page']))
$page=(int)($_GET['page']); else $page=1;
$start=($page-1)*$pagesize;
$sql="select *from student limit $start,$pagesize "; $result=mysql_query($sql); $row=mysql_fetch_row($result); while($row){ echo "
"; $row=mysql_fetch_row($result); }
echo "
echo "前一页"; echo "|"; echo "$page"; }
if($page
echo "下一页"; echo ">>"; }
echo "
"; ?>
通过验证问题答案来修改密码具体代码如下:
$result=mysql_query("select * from student where sno='$sno'"); $row=mysql_fetch_row($result);
$sql="update student set pass='$pass1' where sno='$sno'"; $result=mysql_query($sql);
五 总结
三周的课程设计结束了,我和同学们一起度过了这段忙碌而充实的时光。这次的课程设计深刻的反映出实践是检验真理的唯一标准这句话的真谛。课程设计是我们专业课程知综合应用的实践训练,是我们迈向社会,从事职业工作前一个必不少的过程。“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义。我今天认真的进行程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
这次的课程设计的主题是考试系统的开发设计,首先老师先介绍了这次课程设计的主要内容和实施步骤,然后同学们进行分组并选出组长和集成组组员,各组进行分工安排、制定计划,组员明确各自的任务后,互相合作完成工作。我们组在这次课程设计中负责的是面向教师的主观题的开发设计,主要部分是试题的删除添加、修改,以及试卷生成和评分等。而我自己在组内主要负责需求分析、表单设计、实习报告撰写等部分。在明确各自任务后,我们就开始了真正的系统开发。在需求分析阶段,我们通过各种渠道查阅了许多资料,以及已有的样例等,然后根据资料做了需求分析,根据需求分析进行了表单的设计,运用各种部件、菜单、按钮等达到用户体验更真实、流畅的目的。
在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情, 如何去做一件事情,又如何完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
在这次设计过程中,体现出了自己设计开发系统的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节, 从而加以弥补。在今后的学习中,我们应该发现自己的不足然后虚心学习,更加完善自己,为今后步入社会参加工作打下足够的基础。
六、参考文献
[1] Tricia Ballad William Ballad .PHP 应用程序安全编程[M]. 机械工业出版社,2010.
[2] 吴津津 .PHP 与MySQL 权威指南[M].机械工业出版社,2010.
[3] 陈昊. 零基础学PHP[M].北京:机械工业出版社,2012.
[4] Davey Shafik . PHP深度分析[M].中国水利水电出版社.2010.
[5] 袁鑫 .PHP 开发从入门到精通[M].中国水利水电出版社.2010.
[6] 三扬科技.PHP 开发入行真功夫[M].电子工业出版社,2009.
[7] 邹天思.PHP 网络编程标准教[M].清华大学出版社,2012.
[8] 明日科技. PHP从入门到精通[M].机械工业出版社.2012.
[9] 刘欣 . PHP开发宝典[M].机械工业出版社,2010.
组成员学生信息及最终成绩表:
指导教师评语:
___________________________________________________________________________________________________________________________________________________________________________________________________
教师签名:__________ _______________