基于PHP和MYSQL的在线考试系统外文翻译资料

 2022-09-10 22:10:41

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


具有电源故障处理和存储能力的

基于PHP和MYSQL的在线考试系统

摘要:本文介绍了PHP和MySQL开发的具有电源故障处理和存储能力的在线考试系统。以笔者掌握的知识看来,这些缺点都不能在由PHP和MySQL开发普通的系统中解决。在大多数发展中国家,电源故障直接影响在线考试系统的效率,并影响系统的可靠性。系统因为停电而停止运行。这类系统要解决的第二个缺点是在线考试系统的正确率,通过引入存储,把不确定的问题保存到存储箱并可以重新获取存储的题目。这些功能使得网上考试系统更加友好,可靠和自然。

关键词:电源故障处理 存储能力 PHP和MySQL 在线考试系统 可靠 灵活

1引言

考试是测试学习能力最佳方式。随着计算机,网络和网络技术的迅速发展,教育机构以基于网络的检测系统取代人工考试系统来降低考试的财务成本,也减少了教师和行政人员的负担。为此,许多网上考试系统由研究人员,如Ji Wen在市场上推出了提出的基于PHP和MySQL的Web的考试系统,其中包括三个主要组成部分,分别包括学生,教师和管理人员,这些介绍,并详细分析了Huiqiang Lu提出的基于J2EE的在线考试系统,Chen XiangJun提出了普通的考试制度的发展,Sophal Chao讨论考试制度中老师控制学生考试并有将分享的部门和其他有关团体之间的信息,JunJie Zhang阐述了基于模板的智能化在线检测系统的设计实现过程。有许多系统介绍讨论了基于在ASP.NET开发网上考试系统网络故障的网络处理方法,从而起到在考试过程中支撑作用,如G.Vikram。Lio Siyao研究了在线考试过程中作弊的可能方法和现有的在线考试系统的反作弊措施,Monica Farrow研究了用在线编程考试来评估Java学习并用于两届本科生中,Guo Ping研究了网上评分系统的设计和实施。每个系统都有自己的独特性,但也有一定的缺点,如电力中断和正确率。从学生的角度,系统应该是可靠的,值得信赖的,灵活并且用户友好的。电源故障是在发展中国家如巴基斯坦存在的一个主要问题,因此对于大规模考试诸如大学考试这样的问题是首要解决的问题。根据难度级别来确定时间,同时提供了一个自然的行为系统去根据学生的选择来确定级别,比较简单的问题给予比较少的时间,给予难题更多的时间。这两个缺点都将在本研究中解决。

所提出的系统分为四个功能模块;这些是用户管理模块,内容管理模块,考试管理模块和安全模块。

2用户管理模块

用户管理对系统运行非常重要。用户角色大多有三类,如果系统不知道特定用户的权限,那么系统很容易受到破坏。所以该模块划分用户分成三个类别的权利,即管理员,教师和学生。

表1 相关管理模块

活动

管理员

教师

学生

账户创建及注销

相关账户资料的更新

添加、删除、更新学科

学科状态更新

添加、删除、更新问题

参加考试

1)管理员

如表1所示,该用户具有系统的最高权限。管理员可激活和注销教师和学生的账户,而注册是对教师和学生开放的,因此需要管理员来检查用户所提供的资料,如果给定的信息是有效的,然后激活账户,否则删除账户。该管理员的另一项权限是添加,删除题材和题材的选择及更新,添加过程中,可设置不同的属性,即总时间,总的问题,每题分值,相关主题及其更新状态。通过只点击一个链接主题更新状态,因为学生有永久的账户,所以更新试卷状态非常重要。试卷只能在特定的时间出现,管理员通过点击一个链接来更新这些。管理员还必须拥有从数据库中添加,更新,删除数据的权利,也有权更新自己的个人资料

2)教师

这是第二类用户,教师可以共享管理员的一部分权限,教师还可以添加,更新,及从数据库中删除问题,但只限于他们的相关学科,一个科目的教师无法添加,删除,更新其他学科的问题。那老师可以根据需求更新他自己的账户的配置文件

3)学生

学生是第三类用户,在系统上具有有限的权利。这一类的用户可以注册,更新他们的个人资料,并参加考试。学生只能参加专业和院系相关的考试。并获取现在和以前的成绩。

3内容管理模块

这个模块涉及的是系统管理相关,该模块所涉及的内容是学科和问题。

1)学科管理

在数据库中有许多学科,为了更好的管理这些学科,在添加一个学科时,一个系下的每一个学科都有特定的学期相关联。不同的活动由不同的学科进行添加、更新、删除等管理。

2)问题管理

由于教师添加了数以千计的问题,为了便于管理,为一个问题都对应特定的学期、学科及专业来保证它是唯一的,问题管理允许管理员和教师补充,更新和删除的问题。

4考试管理模块

该模块犹如系统的心脏。它涉及所有在考试过程中执行的操作,如试卷的提取管理,时间管理,电源故障处理,存储箱和记分管理。

1)试卷提取管理

在考试中每篇试卷均有若干问题组成,并且从数据库文件提取也由固定的时间来完成,系统如此操作是为了:一避免作弊,从数据库的问题是随机获取的,这样做每个学生都会在试卷中获得不同问题。二是从数据库中读取每一个问题所对应的用户唯一的。对于每一位用户避免重复问题,每次的查询都会获得唯一的问题。

其计算公式为

R=T-(AUD)

R=剩余问题数

T=总问题数

A=已回答问题数

D=储存的问题数

U=并集

根据上面的公式,对应的答案和问题要在两次查询中获得,第一次查询的ID,并在第二个查询的存储箱的查询中被找到,然后把这个ID的一个数组并它存储在一个会话后,在以后的每次查询中题,存储在会话中的答案会删除,剩下问题,因为在每一个查询的结果给出了独特的问题。随机和独特的查询匹配是:

$qry=@mysql_query(”select * from questions where quest_id not in(“.$_SESSION[session_var].”) and subject_id=$id order by rand() limit

“.$limitset.””,$connection);

//其中,问题就是问题表,并$ _SESSION [会议VAR]中存储的问题id和$限制的数组变量设置显示问题

2)时间管理

时间管理是在线考试系统的一个重要部分,因为每份试卷都有时间限制,所以该系统具有限制学生回答试卷的时间的能力。在这种情况下,如果发生电源故障,那么就可以计算出剩余的时间,使学生可以在系统重新启动后的剩余时间里完成他们的论文,为此目的系统中使用两个公式,第一个是在当时使用时系统在正常情况下运行,第二个发生停电情况时使用。

第一个公式是:

Rt=Tt-(Ct-St) (1)

Rt=剩余时间

Tt=总时间

Ct=当前时间

St=开始时间

第二个公式是:

Rt=Tt-((Ct-Ut) Kt) (2)

Rt=剩余时间

Ct=当前时间

Ut=已更新的开始时间

Kt=已使用时间

当用户开始答题,时间就会由数据库中设置的总时间,消耗时间,剩余时间和用户会话ID。作为一名学生,点击下一步或刷新页面时消耗,剩余时间被更新。开始时间更新只有在发生电源故障重启系统时才会更新,当用户使用不同的会话ID开始一个新的会话系统时,启动时间在由匹配的ID获得更新。如该图1显示了一个学生每一时刻的状态,如果剩余时间小于或等于零,系统自动提交试卷,时间管理使系统更加可靠。

图1 组卷管理

3)电源故障处理

电源故障是在考试过程中直接影响结果的重要部分,对所有答案和存储的的问题、开始时间、剩余时间、消耗时间和会话ID存储在数据库中,特定会话的所有记录都有会话ID作为标识符。在试卷的Cookie中设置存储学生的会话ID,这样,如果发生停电或学生错误的关闭浏览器或系统崩溃,那么系统重新启动后,如图1成功登录后,系统检查了相对活跃的Cookie,如果活动Cookie被发现,一个命名为“恢复文件”的链接出现,如图3,当点击该链接,如果id正确,Cookie的会话ID与当前会话ID匹配。

执行恢复页面,这块代码在这种条件下会获得正确的id,从数据库中查询新的id,查询执行每次登陆只有一次,所以开始时更新,因为查询的第一次成功执行后,在同一会话的会话ID和会话id会取得一样的值,因为没有不同,所以不容许查询再次执行,消耗的时间是使用以前的会话ID作为标识,从数据库中获取和剩余使用时间是第二个公式计算Rt=Tt-((Ct-Ut) Kt).。在同一时间执行查询找到回答,存储和回答的问题使用以前的会话ID作为遗留标识来查询,引导学生到存储的原来的题目和相同的剩余时间,并会出现一个名为paper start的链接,如图2所示。如果学生提前完成试卷,便会显示一条消息,因为系统总是检查学生记录以用于指定的考生,以避免再次作答。

图2 开始考试

图3电源故障恢复后后重新开始考试

4)存储

存储是为了方便学生而使用的部件,根据白沙瓦农业大学的学生的调查,80%的学生因为系统正确率的原因而不愿使用。许多学生说,在线考试期间,当他们面对一个模棱两可的时候无法跳过这个问题,系统会强制回答回答这个问题,当我们继续考试的时候,我们有很多其他的问题来回答,我们想回答简单的问题而不是在比较困难的问题用去时间,因为我们希望在相同的的时间解决更多的问题。因此引入如图4的存储系统,如果一个学生尝试跳过模棱两可的问题或需要很多时间才能回答的问题,在考试过程中,学生可以把这个问题通过点击存储箱如图4,然后在任何时候学生可以通过单击从存储箱中选择,考试中可以点击lsquo;提交到存储箱rsquo;提交问题到存储箱。在考试过程中的学生随时在普通试卷和存储箱之间切换。存储箱并不意味着在规定时间内学生给学生更多时间,而是使得系统更加灵活和对用户更加友好。

图4学生的试卷界面

5)成绩管理

分数代表了学生的成功程度,因此有必要为学生提供一个更好的计算分数的程序,为此,在管理员添加科目时为每一题目设定分数,然后试卷系统自动获取真实的回答时间,并与每个问题的属性标志相乘,它可以接受管理员设定的任何值,之后根据百分比和成绩为基础为每一个学生计算平均绩点。在本系统中采用的分级和GPA是:

如果成绩等于百分之90或高于百分之90的考生,等级为A ,GPA为4.00。

如果成绩等于百分之80且低于百分之90的考生,等级为A,GPA为3.67。

如果成绩等于百分之70且低于百分之80的考生,等级为B ,GPA为3.33。

如果成绩等于百分之65且低于百分之70的考生,等级为B,GPA为3.00。

如果成绩等于百分之56且低于百分之65的考生,等级为C ,GPA为2.50。

如果成绩等于百分之50且低于百分之56的考生,等级为C,GPA为2.00。

如果成绩低于百分之50的考生,等级为E,GPA为0.00,不及格。

比分牌显示分数、百分数、等级、GPA、总正确答案数和总错误答案数和学生的总用时。

5安全模块

此模块关注的是系统的安全性,对在线考试系统来讲安全性是重中之重,在线考试系统比独立系统更容易受到攻击,因为在线系统在互联网上可以全球访问,为了安全运行,必须遵守如下:

所有对系统的输入必须同时接受用客户端和服务器端的验证,然后将验证数据经过滤器过滤。对于客户端使用JQuery验证插件和SEVER端的preg_match(使用PHP和正则表达式)的验证功能。如果输入域preg_match()函数使用正则表达式相匹配,如电子邮件验证正则表达式为“/ ^ [_ A-Z0-9] ( [_ A-Z0-9 - ] )* @ [A- Z0-9 - ] ( [A-Z0-9 - ] )*(.[AZ] {2,3})$ /I”,每个输入都必须与特定的正则表达式相匹配。数据要经过服务器侧使用PHP函数如mysql_escape_string() 和htmlentities(),strip_tags(),trim(),通过后才会提交到数据量。

为了避免密码被破解,使用MD5()函数加密的密码,相比明文存储,这样加密无法直接读取密码。

为了避免垃圾邮件而定制开发的验证码系统,每次提交表单都会比较验证码,

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[146058],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。