随着时代发展,人们不再希望通过传统的考试模式来进行考试。传统模式的考试有很多的弊端,而且会造成很多资源的浪费。通过调查研究发现例利用计算机和互联网进行在线考试是一个解决当前传统考试问题的一个很好的解决方案。为此,我们开发了本系统。
PHP在线考试系统通过PHP:MySQL进行开发,系统分为管理人员,教师和学生三部分。通过他们的有效衔接,共同完成了在线考试功能。

在线考试系统登录

在登录的时候首先选择对了权限权,权限分为管理人员,教师和学生,然后输入自己的用户密码以及验证码,之后即可登录到系统中来。

管理人员后台

管理人员在登陆之后,可对系统的所有功能进行管理,主要包括学生信息的管理,教师信息的管理是题库的管理,试卷信息的管理以及对学生的考试成绩进行查询。

教师部分管理

教师用户在登陆之后可以管理自己的个人信息。根据考试的要求对考试试卷信息进行设置。并可查看学生的错题信息以及对主观题进行打分。

学生用户管理

学生用户在登录之后可以查看自己的个人信息,可以在线参与考试,并可查看自己的考试成绩以及错题分析。
随着人们对信息管理和运用的需求的日益迫切及和信息技术的飞速发展,信息系统的整和运用在生活的各个方面都得到广泛深入的使用。在线考试系统是非常典型的合集管理信息系统和网络编程技。但是,随着学校管理工作内容、对象等不断的变化,复杂麻烦的手工操作以及一般的计算机软件已不能满足考试的需要了。使用先进的管理信息系统对学生息资源和试题资源进行科学的和系统打的管理己成为高校考试系统发展趋势了。如今,几乎所有学校的各个部门都已建立了针对日常工作的信息管理系统。如财务管理信息系统、教务系统、科研管理信息系统、图书检索信息系统等。而这些系统在很大的程度上都提高了这儿些部门的工作效率、管理水平。但对于在线考试系统来说,整体发展比较落后,效率比较低下。认识到了在线考试系统在学校信息化中的重要地位,所以,才需要用先进的互联网开发技术,信息化的管理系统,实现线上化考试,降低线下考试的成本,减轻老师的教学负担,同时也提供一个比较公正的考试环境、操作简单的在线考试系统。


1 前言
老师要求我们使用php+mysql做一个简单的管理系统,并且发了份源代码下来,同时老师的要求也不断地在降低,许多同学也都是修改发的源代码上交。
我认为那份源代码做工粗糙,功能简单,仅是修改那份源代码或做成那样,乱敲两下就能完成任务。
因此,我决定独立开发一个我想要的学生成绩管理系统。
2 功能模块
本系统主要分为两个模块,分别是学生模块和教师模块
在登录界面输入用户名和密码之后,在后端验证是否正确,且判断该用户的权限,根据用户权限进入不同的页面,如教师则进入教师页面,学生则进去学生页面。
登录之后会在用户的计算机上留下cookies信息,时效为一个小时,如果用户在一个小时内,使用该系统后没有退出,则下次进入该系统的时候,就不用再次登录。
每个页面都会验证Session信息,只有登录了的用户才能使用该系统,否则页面会跳转到登录页面。

<?php
error_reporting(E_ALL ^ E_NOTICE);$conn=@mysql_connect("localhost","root","root") or die("数据库链接失败".mysql_error());
mysql_select_db("daizu",$conn) or die("数据库链接失败".mysql_error());
mysql_query('set names utf8');//设置时区
date_default_timezone_set('asia/shanghai');
define('SYS_ROOT', str_replace("\\", '/', dirname(__FILE__)));
define('File_ROOT', SYS_ROOT."/upload/");
define('IMG_ROOT', SYS_ROOT . "/upload/");@extract($_POST);
@extract($_GET);function getfirst($sql)
{$res=mysql_query($sql);$rows=mysql_fetch_array($res);return $rows;
}
//
function getcount($sql){$res=mysql_query($sql);return mysql_num_rows($res);
}
function get_name($id,$table)
{$sql="select * from $table where id='$id'";$rows=getfirst($sql);return $rows[name];
}
//遍历创建目录
function Remkdir($path) {if (!file_exists($path)) {Remkdir(dirname($path));@mkdir($path, 0777);}
}
//上传图片
function upload_image($inputname, $image=null, $type='upimages', $width=440) {$n = time().rand(1000,9999).'.jpg';$z = $_FILES[$inputname];if ($z && strpos($z['type'], 'image')===0 && $z['error']==0) {if (!$image) {Remkdir( IMG_ROOT . '/' . "{$type}/" );$image = "{$type}/{$n}";$path = IMG_ROOT . '/' . $image;} else {Remkdir( dirname(IMG_ROOT .'/' .$image) );$image = "{$type}/{$n}";$path = IMG_ROOT . '/' .$image;}
//echo $path ;move_uploaded_file($z['tmp_name'], $path);//echo $image;exit;return $image;}return $image;
}
//获取文件后缀名
function get_extend($file_name)
{$extend = pathinfo($file_name);
$extend = strtolower($extend["extension"]);
return $extend;
}
//文件上传实现function upload_file($inputname, $file=null)
{$year = date('Y'); $day = date('md');$z = $_FILES[$inputname];$file_ext=get_extend($z['name']);$n = time().rand(1000,9999).".".$file_ext;if ($z &&  $z['error']==0) {if (!$file) {Remkdir( File_ROOT . '/' . "{$day}" );$file = "{$day}/{$n}";$path = File_ROOT . '/' . $file;} else {Remkdir( File_ROOT . '/' . "{$day}" );$file = "{$day}/{$n}";$path = File_ROOT . '/' .$file;}
//echo $path ;move_uploaded_file($z['tmp_name'], $path);//echo $file;exit;return $file;}return $file;
}
//分页函数.
function get_pager($url, $param, $count, $page = 1, $size = 10)
{$size = intval($size);if($size < 1)$size = 10;$page = intval($page);if($page < 1)$page = 1;$count = intval($count);$page_count = $count > 0 ? intval(ceil($count / $size)) : 1;if ($page > $page_count)$page = $page_count;$page_prev  = ($page > 1) ? $page - 1 : 1;$page_next  = ($page < $page_count) ? $page + 1 : $page_count;$param_url = '?';foreach ($param as $key => $value)$param_url .= $key . '=' . $value . '&';$pager['url']        = $url;$pager['start']      = ($page-1) * $size;$pager['page']       = $page;$pager['size']       = $size;$pager['count']         = $count;$pager['page_count'] = $page_count;if($page_count <= '1'){$pager['first'] = $pager['prev']  = $pager['next']  = $pager['last']  = '';}else{if($page == $page_count){$pager['first'] = $url . $param_url . 'page=1';$pager['prev']  = $url . $param_url . 'page=' . $page_prev;$pager['next']  = '';$pager['last']  = '';}elseif($page_prev == '1' && $page == '1'){$pager['first'] = '';$pager['prev']  = '';$pager['next']  = $url . $param_url . 'page=' . $page_next;$pager['last']  = $url . $param_url . 'page=' . $page_count;}else{$pager['first'] = $url . $param_url . 'page=1';$pager['prev']  = $url . $param_url . 'page=' . $page_prev;$pager['next']  = $url . $param_url . 'page=' . $page_next;$pager['last']  = $url . $param_url . 'page=' . $page_count;}}return $pager;
}
?>

目录
1 绪论 1
1.1课题背景 1
1.2课题研究现状 1
1.3初步设计方法与实施方案 2
1.4本文研究内容 2
2 系统开发环境 4
2.1 使用工具简介 4
2.2 环境配置 4
2.3 B/S结构简介 4
2.4 MySQL数据库 5
2.5 框架介绍 5
3 系统分析 6
3.1系统可行性分析 6
3.1.1经济可行性 6
3.1.2技术可行性 6
3.1.3运行可行性 6
3.2系统现状分析 6
3.3功能需求分析 7
3.4系统设计规则与运行环境 8
3.5系统流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3删除信息流程 10
4 系统设计 11
4.1系统设计主要功能 11
4.2数据库设计 11
4.2.1数据库设计规范 11
4.2.2 E/R图 11
4.2.3数据表 12
5 系统实现 25
5.1系统功能模块 25
5.2后台模块 27
5.2.1管理员功能模块 27
5.2.2用户功能模块 30
6 系统测试 33
6.1功能测试 33
6.2可用性测试 33
6.3性能测试 34
6.4测试结果分析 34
7结 论 35
参考文献 36
致 谢 37

python基于PHP+MySQL的在线考试系统相关推荐

  1. 基于PHP+MySQL实现在线考试系统【100010717】

    在线考试系统 摘 要 随着科技的发展,网络技术已经深入到人们的日常生活中,同时带来了教育方式的一次变革.而网络考试则是一个很重要的方向.基于 Web 技术的网络考试系统可以借助于遍布全球的 Inter ...

  2. 考试 mysql 数据库设计_基于MySQL的在线考试系统数据库设计

    2017年第8期信息通信2017 (总第176 期)INFORMATION & COMMUNICATIONS (Sum. No 176) 基于M ySQL的在线考试系统数据库设计 陈松楠,侯丽 ...

  3. 基于Java Web的在线考试系统的实现

    摘  要 随着互联网的发展,教育的方式逐渐步入信息化.智能化,网络教育逐渐成为教育未来发展的重要趋势,在线考试系统成为教育成果考察的主流方向.在线考试充分利用现代信息化技术的优势,使考试更方便.更高效 ...

  4. 基于java web的在线考试系统(源码+论文)

    今天介绍的一个项目是, 基于java web的在线考试系统 1 设计内容及要求 1.1 在线考试系统概述 基于Java web开发的在线考试系统不仅可以充分利用校园内各种资源,对学校的各种教学资源进行 ...

  5. 基于PHP+MySQL+Apache在线考试管理系统(附源码)

    作者:BSXY_陈永跃 BSXY_信息学院 注:未经允许禁止转发任何内容 基于PHP+MySQL+Apache在线考试管理系统 项目体验 1.前言 1.1.编写目的 1.2.项目需求 1.3.项目环境 ...

  6. 基于JAVA四六级在线考试系统计算机毕业设计源码+数据库+lw文档+系统+部署

    基于JAVA四六级在线考试系统计算机毕业设计源码+数据库+lw文档+系统+部署 基于JAVA四六级在线考试系统计算机毕业设计源码+数据库+lw文档+系统+部署 本源码技术栈: 项目架构:B/S架构 开 ...

  7. 基于SSM实现的在线考试系统【附源码】(毕设)

    一.项目简介 本项目是一套基于SSM实现的在线考试系统 或 网络考试系统 或 考试管理系统 或 在线考试平台,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者. 详细介绍了该 ...

  8. php mysql英语在线考试系统+论文

    php mysql英语在线考试系统,分学生和管理员两个角色,普通考生输入准考证进入考试,可以查看自己信息,可以选择答A卷B卷,提交可以查看自己的分数,可以退出考试后台:管理员登录.添加.修改.删除会员 ...

  9. 毕业设计 - 基于java web的在线考试系统【源码+论文】

    文章目录 前言 一.项目设计 1. 模块设计 2. 基本功能 2.1 登录功能 2.2 系统答题 2.3 答题得分 2.4 错题解析 3. 实现效果 二.部分源码 项目源码 前言 今天学长向大家分享一 ...

最新文章

  1. 伍六七带你学算法 进阶篇-排序算法
  2. 如何使用jquery判断一个元素是否含有一个指定的类(class)
  3. Docker之镜像、容器、仓库概念
  4. RX学习笔记:正则表达式
  5. 【杂谈】有三AI知识星球指导手册出炉!和公众号相比又有哪些内容?
  6. 开发app用户协议_家电商城APP开发,方便用户选购家电商品
  7. 博文视点 OpenParty第11期:世界黑客大会那些事
  8. Gentoo - ssh-agent配置
  9. 关于CI框架引入CSS与JS文件
  10. 十五、详述 IntelliJ IDEA 插件的安装及使用方法
  11. CMU黑科技,手机录视频,实现人脸3D建模的高度逼真
  12. 2017.4.2 loli测试
  13. MapGIS6.7投影生成点-以物化探综合剖面图为例
  14. windows系统进程System ntoskrnl.exe pid 4占用8080端口
  15. 数字未来 认识DMA基金会
  16. chrome浏览器谷歌浏览器打开是hao123
  17. 单点登录SSO(single sign on)模式(单点登录+权限认证)
  18. Cesium中对geojson的处理
  19. 闪动的TextView
  20. 2018中国计算机学会推荐国际学术会议(人工智能)

热门文章

  1. python 程序计时
  2. Eclipse是著名的跨平台的自由集成开发环境(IDE)
  3. CodeForces - 1000D D. Yet Another Problem On a Subsequence 好题
  4. Matlab Simulink RS-485 Modbus RTU协议串口通信实录
  5. 计算机管理员基础知识,计算机网络管理员(基础知识)
  6. 如何将一条线段分成多段
  7. vue3+ts issue —— vue.ts 不是模块。
  8. 大湾区创新创业孵化基地开展常态化项目申报,引入区块链与量子信息企业 | 产业区块链发展周报...
  9. STM32控制NB-IOT将数据上传至微信与网站显示
  10. mysql安装bus error_如何解决mysql安装bus error问题