2.2.1 用户功能区 .......................................................................................................................... 3 2.2.2 管理员功能区 ...................................................................................................................... 3
三 概念结构设计 .................................................................................................................................... 4 3.1 各个实体的局部ER图 ................................................................................................................ 4 3.2 系统功能模块图 .......................................................................................................................... 5
3.2.1总体设计 ............................................................................................................................... 5 3.2.2 学生用户模块 .................................................................................................................... 6 3.2.3 管理员模块 ........................................................................................................................ 6
四 逻辑结构设计 .................................................................................................................................... 7 4.1 数据库设计与实现 ..................................................................................................................... 7
4.1.1数据库技术的现状与发展 ................................................................................................... 7 4.2 数据库逻辑结构设计 ................................................................................................................. 8
五 系统功能设计与实现 ...................................................................................................................... 10 5.1 系统前台 .................................................................................................................................... 10 5.2 系统后台 .................................................................................................................................... 12
1
南京晓庄学院 课程设计报告书
一 绪论
1.1 课题简介
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。学生成绩信息的管理是不容出错的,其学生基本信息、成绩管理等这些琐碎而又细致的工作,工作量是很大的,而且也不容许出错。如果是手工管理这些的话,那将耗费工作人员大量的时间和精力。用计算机来管理这些信息是非常方便,而且出错率小,可靠性高,查找方便,存储量也大。这些优点能够极大地提高对学生成绩管理的效率,也是管理趋向信息化重要条件。本系统是弥补某些学校成绩管理的不足,创建的一套行之有效的计算机成绩管理的方案。
1.2 项目开发的目标
建立学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高办学效益和现代化水平。帮助广大教师提高工作效率,实现学生成绩维护工作流程的系统化、规范化和自动化。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:
(1)系统应具有实用性、可靠性和适用性,同时注意到先进性。
(2)不同用户有不同的查询和修改权限,防止非法查询,非法修改。
(3)方便用户的操作,尽量减少用户的操作。
2
南京晓庄学院 课程设计报告书
二 系统分析
2.1 需求分析
学生成绩管理系统对于学校管理学生成绩是很必要的。学校可以通过成绩管理系统来发布,管理成绩,学生可以通过网络来访问学生成绩管理系统来查询自己的成绩,管理系统会很详尽的记录保存学生的各科成绩。目前许多学校都有自己的成绩管理系统。
2.2 系统设计分析 2.2.1 用户功能区
1. 学生拥有登陆账号(学号)以及密码 2. 学生通过输入账号密码登陆管理系统 3. 学生可以查询成绩 4. 学生可以修改登录密码 5. 学生可以修改密码问题和答案
2.2.2 管理员功能区
1. 管理员拥有登陆账号(学号)以及密码 2. 管理员通过输入账号密码登陆管理系统 3. 管理员可以添加学生信息 4. 管理员可以删除学生信息 5. 管理员可以查看所有学生信息 6. 管理员可以添加课程信息 7.管理员可以添加学生成绩 8. 管理员可以删除学生成绩 9. 管理员可以修改学生成绩
3
南京晓庄学院 课程设计报告书
三 概念结构设计
3.1 各个实体的局部ER图
性别 学号 年龄 姓名 系别 学生 密码 问题 答案
图3-1 学生E-R图
课程名 课程号 课程
图3-2 课程E-R图
4
南京晓庄学院 课程设计报告书
ID 密码管理员
图3-3 管理员E-R图
3.2 系统功能模块图
3.2.1总体设计
根据学生成绩管理系统的功能需求,进行系统分析设计。系统功能模块图如图3-4所示:
查询成绩 学生 成绩管理系统 管理员 修改个人信息 修改学生档案 管理课表 修改成绩
图3-4 功能模块图
5
南京晓庄学院 课程设计报告书
3.2.2 学生用户模块
学生用户模块:学生可以通过学号密码登录。学生不仅可以查看各科最新成绩,还可以修改个人信息。模块图如图3-5所示:
查询成绩 学生 修改个人密码 修改个人信息 修改问题和答案 图3-5 学生功能
3.2.3 管理员模块
管理员模块:管理员管理模块也就是网站的后台,主要工作是负责对前台模块的管理与维护。包含管理学生档案、管理学生成绩、管理课程。模块图如图3-6所示:
添加新学生 管理学生档案 删除学生 管理员 管理课表 添加课程 添加成绩 管理成绩 删除成绩 修改成绩 图3-6 管理员功能
6
南京晓庄学院 课程设计报告书
四 逻辑结构设计
4.1 数据库设计与实现
数据库在系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。另外,合理的数据库结构将非常有利于程序的实现。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。
4.1.1数据库技术的现状与发展
数据库是60年代末出现的一门计算机软件技术,到现在虽然只有三十多年的历史,但在理论和时间上都已经趋于成熟,使我们能够方便的使用。数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。
MySQL作为一种开放源码数据库,以其简单易用的特点广泛被广大用户采用,MySQL虽然是免费的,但同Oracle, Sybase, Informix, Db2等商业数据库一样,具有数据库系统的通用性:
(1)数据库管理系统。我们知道,所谓的数据库就是一些结构化的数据的联合体,要提供对这些数据的存取、增加、修改、删除或更加复杂的数据抽取等操作,需要有一个支撑系统,这就是数据库管理系统(DBMS),MySQL完全具有这方面的功能。
(2)关系型数据库管理系统。在数据库的发展历程中,曾出现过多种不同形式的数据库系统,但关系型数据库管理系统(RDBMS)以其优越性而被广为采用,象现在几种广泛使用的数据库全为关系型数据库。同样,MySQL也是关系型的数据库系统,支持标准的结构化查询语言(Structured Query Language)。
7
南京晓庄学院 课程设计报告书
(3)开放源码数据库。同商业性的数据库相比,这是MySQL最大的特点。MySQL的源码是公开的,这就意味着任何人,只要遵守GPL的规则都可以对MySQL的源码使用、修改以符合自己特殊的需求。
(4)技术特点。MySQL服务器端是多线程的,为客户端提供了不同的程序接口和链接库,如C、C++、Java、Perl、PHP等,也提供了简单的管理工具,如mysqladmin,mysql等。
MySQL有如此多的特点,又由于其免费的特点,这就给许多的中小应用提供了不错的选择。尤其是对一些中小企业,无论是从降低成本,还是从性能方面,采用MySQL作为其数据支撑系统,都是一种可行的方案。
4.2 数据库逻辑结构设计
本系统数据库为:seek,其中包含了四个MySQL数据表来实现对数据的存储、调用。以下为具体数据表模式:
⑴ 【管理员表】(管理员ID、管理员密码)
⑵ 【学生表】(学生、姓名、密码、性别、年龄、系别、提示问题、提示答案) ⑶ 【课程表】(课程号、课程名)
⑷ 【成绩表】(学号、课程号、课程名、成绩)
其中,用下划线标出的属性为表的主键属性。各表的具体设计如表4-1~表4-4所示。
1. admin 表
admin表存放管理员登录名和密码。
表4-1 admin表
变量 id pass 类型 varchar varchar
8
长度 10 20 主键否 主键 描述 管理员ID 密码 南京晓庄学院 课程设计报告书
2.student表
学生所有的信息都存放在些表中。
表4-2 student 表
名称 Sno Sname age Ssex sdept pass Question Answer 3. course 表
course表存放课程号,课程名。
表4-3 course表
名称 Cno cname
4.Sreport表
sreport表存放学生成绩。
表4-4 sreport 表
名称 sno cno cname mark 类型 varchar varchar varchar Int 长度 8 8 50 3 主键否 主键 描述 学号 课程号 课程名 成绩 数据类型 Varchar varchar 长度 8 50 主键否 主键 描述 课程号 课程名 类型 varchar varchar Int varchar varchar Varchar Varchar Varchar 长度 8 30 3 10 50 20 50 50 主键否 主键 描述 学号 姓名 年龄 性别 系别 密码 问题 答案 9
南京晓庄学院 课程设计报告书
五 系统功能设计与实现
5.1 系统前台
图4-1 成绩管理系统主页面
学生登陆采用POST方式提交表单,代码如下:
登陆成功后显示各科成绩等。具体代码如下: $result=mysql_query(\"select * from sreport where sno='$sno'\");
$rows=mysql_num_rows($result); for($i = 0; $i<$rows; $i++) {
$row=mysql_fetch_row($result); >
11
南京晓庄学院 课程设计报告书
>
图4-4 修改密码页面
通过验证问题答案来修改密码具体代码如下:
$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);
5.2 系统后台
图4-4 后台管理员登录界面
管理员输入管理员名称和密码,进入系统后台。 检验管理员账号的代码如下:
$sql=\"select *from admin where id='$id'\"; $result=mysql_query($sql); $row=mysql_fetch_row($result);
6 查询成绩
删除成绩的具体代码 代码: 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 \"\";
12
南京晓庄学院 课程设计报告书
>
图4-7 添加学生
具体实现代码为: 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 \"\"; >
图4-8 查看所有学生
显示所有的学生信息 , 可以删除任意信息, 每页显示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
13
南京晓庄学院 课程设计报告书
$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 \"
echo \"
echo \"前一页\"; echo \"|\"; echo \"$page\"; }
if($page<$total){ $next=$page+1; echo \"|\";
echo \"
14
因篇幅问题不能全部显示,请点此查看更多更全内容