论文部分内容阅读
摘 要:在计算机技术迅速发展的背景下,为培养同时具备理论知识和动手编程能力的符合市场需要的人才,建立在线可编译的过程化考试平台势在必行。本文首先对LAMP架构进行了分析,然后对在线考试平台系统进行了研究与设计。
关键词:软件技术;过程化考试;Linux系统;Apache服务器;MySQL数据库;PHP语言
中图分类号:TP311.5
1 LAMP框架概述
LAMP框架是指基于Linux系统、Apache服务器、MySQL数据库和PHP脚本语言(也可以是Perl或者Python语言)编写程序的一种框架。上述软件均为开源软件,以其高效率、高性能、良好兼容性等优点在互联网社会得以普及。
2 过程化考试平台设计
2.1 整体架构
如图1,教师和学生通过不同端口、不同权限访问服务器,教师将通过相应权限和页面进行出题、制卷、安排考试等活动;学生根据老师要求,在服务器配置安排的权限下在相应页面完成作业、联系并且在规定的时间、IP地址下进行考试。之后系统将调用编译器对学生提交的代码进行编译、比对,并给出最终得分。
2.2 Linux下环境配置
首先,考试平台的服务器端应当部署Linux版本的操作系统,本设计在服务器端安装了Ubuntu操作系统,之后通过命令:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install mysql-server
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install php5-mysql
sudo apt-get install php5-gd
分别安装Mysql数据库、Apache服务器、PHP开发环境以及三者之间相互传输机制。之后在脚本页面的目录下通过命令:
sudo chmod –r 777
使得源文件目录权限获得修改。
2.3 Apache服务器端配置
将Apache的配置文件httpd.conf文件中文件进行多端口监听、配置:
Listen localhost:80
Listen localhost:8001
从而让学生进入默认的8080端口而老师通过隐藏的8001端口进入。之后,通过相应标签:
分配相应权限。
2.4 MySQL数据库设计
MySQL数据库将安排三种权限,即最高权限root,高级权限teacher和普通权限student,分别发放给管理员、老师和学生,数据库中按照以下思路设计:
(1)teacher表,student表,分别存放老师、学生信息密码等,作为权限和端口的登陆凭证。
(2)question_base表,将所有试题信息存放于其中,考试时可根据需要随机或者指定提出作为考试试题。
(3)stu_paper表,用于学生答卷,统计分数。
(4)plan表,用于存放考试计划和安排考试信息。
2.5 考试页面与服务器交互设计
在www目录下,创建相应功能的PHP脚本文件。文件中的功能与MySQL中表的设计进行交互,方法通过代码:
<?php
mysql_connect("<服务器地址>","<用户名>","<密码>")or die(mysql_error());//连接数据库
mysql_select_db("<数据库名>")or die(mysql_error());//选择数据库
mysql_query("set names utf8");//向服务器发送sql语句
?>
以及
<?php
$x=mysql_query(“”);//发送sql语句
mysql_fetch_array($x);//接受服务器返回的数据并加以处理
?>
实现。通过PHP语言和HTML语言,实现登陆、修改个人信息、出卷、安排考试、联系、考试等功能,并保存在相应的文件中,通过CSS样式表对前端进行优化,最终完成设计。
以及mysql_fetch_array()等函数进行交互实现。通过PHP语言和HTML语言,实现登陆、修改个人信息、出卷、安排考试、联系、考试等功能,并保存在相应的文件中,通过CSS样式表对前端进行优化,最终完成设计。
3 总结
通过上述设计,一个具备在线编译源代码功能的过程化在线考试平台得以完成。这种设计经由北京信息科技大学计算机学院过程化考试平台项目组进行论证并测试后认为满足了当前教育行业对过程化考试平台的需求。这种基于LAMP架构的设计以其高效、稳定、快速、安全的特点充分展现其组成部分的强大功能,从而能够培养更多的兼备理论知识能力与动手编程操作能力的新型社会人才。
参考文献:
[1]肖自红,张祖平.基于.NET的试题库与在线考试系统研究[J].计算机与数字工程,2008,3:136-139.
[2]JulieMeloni:SamsTeachYourselfPHP,MySQLandApacheAllinOne[M].5thRevised edition,Indianapolis:Sams Publishing,2012.
[3]AlanC.Wilson,RitaVigilMartine:Apache(Jicarilla)[M].SanFrancisco:MpsMultimediaInc.1996.
关键词:软件技术;过程化考试;Linux系统;Apache服务器;MySQL数据库;PHP语言
中图分类号:TP311.5
1 LAMP框架概述
LAMP框架是指基于Linux系统、Apache服务器、MySQL数据库和PHP脚本语言(也可以是Perl或者Python语言)编写程序的一种框架。上述软件均为开源软件,以其高效率、高性能、良好兼容性等优点在互联网社会得以普及。
2 过程化考试平台设计
2.1 整体架构
如图1,教师和学生通过不同端口、不同权限访问服务器,教师将通过相应权限和页面进行出题、制卷、安排考试等活动;学生根据老师要求,在服务器配置安排的权限下在相应页面完成作业、联系并且在规定的时间、IP地址下进行考试。之后系统将调用编译器对学生提交的代码进行编译、比对,并给出最终得分。
2.2 Linux下环境配置
首先,考试平台的服务器端应当部署Linux版本的操作系统,本设计在服务器端安装了Ubuntu操作系统,之后通过命令:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install mysql-server
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install php5-mysql
sudo apt-get install php5-gd
分别安装Mysql数据库、Apache服务器、PHP开发环境以及三者之间相互传输机制。之后在脚本页面的目录下通过命令:
sudo chmod –r 777
使得源文件目录权限获得修改。
2.3 Apache服务器端配置
将Apache的配置文件httpd.conf文件中文件进行多端口监听、配置:
Listen localhost:80
Listen localhost:8001
从而让学生进入默认的8080端口而老师通过隐藏的8001端口进入。之后,通过相应标签:
分配相应权限。
2.4 MySQL数据库设计
MySQL数据库将安排三种权限,即最高权限root,高级权限teacher和普通权限student,分别发放给管理员、老师和学生,数据库中按照以下思路设计:
(1)teacher表,student表,分别存放老师、学生信息密码等,作为权限和端口的登陆凭证。
(2)question_base表,将所有试题信息存放于其中,考试时可根据需要随机或者指定提出作为考试试题。
(3)stu_paper表,用于学生答卷,统计分数。
(4)plan表,用于存放考试计划和安排考试信息。
2.5 考试页面与服务器交互设计
在www目录下,创建相应功能的PHP脚本文件。文件中的功能与MySQL中表的设计进行交互,方法通过代码:
<?php
mysql_connect("<服务器地址>","<用户名>","<密码>")or die(mysql_error());//连接数据库
mysql_select_db("<数据库名>")or die(mysql_error());//选择数据库
mysql_query("set names utf8");//向服务器发送sql语句
?>
以及
<?php
$x=mysql_query(“
mysql_fetch_array($x);//接受服务器返回的数据并加以处理
?>
实现。通过PHP语言和HTML语言,实现登陆、修改个人信息、出卷、安排考试、联系、考试等功能,并保存在相应的文件中,通过CSS样式表对前端进行优化,最终完成设计。
以及mysql_fetch_array()等函数进行交互实现。通过PHP语言和HTML语言,实现登陆、修改个人信息、出卷、安排考试、联系、考试等功能,并保存在相应的文件中,通过CSS样式表对前端进行优化,最终完成设计。
3 总结
通过上述设计,一个具备在线编译源代码功能的过程化在线考试平台得以完成。这种设计经由北京信息科技大学计算机学院过程化考试平台项目组进行论证并测试后认为满足了当前教育行业对过程化考试平台的需求。这种基于LAMP架构的设计以其高效、稳定、快速、安全的特点充分展现其组成部分的强大功能,从而能够培养更多的兼备理论知识能力与动手编程操作能力的新型社会人才。
参考文献:
[1]肖自红,张祖平.基于.NET的试题库与在线考试系统研究[J].计算机与数字工程,2008,3:136-139.
[2]JulieMeloni:SamsTeachYourselfPHP,MySQLandApacheAllinOne[M].5thRevised edition,Indianapolis:Sams Publishing,2012.
[3]AlanC.Wilson,RitaVigilMartine:Apache(Jicarilla)[M].SanFrancisco:MpsMultimediaInc.1996.