当前位置:首页 > 日记 > 正文

如何在网上实现一个在线测试项目

如何在网上实现一个在线测试项目
在文章的最后,我们介绍了使用jQuery实现试题的影响。本文将给你一个例子来说明如何使用jQuery + PHP + MySQL实现在线测试题,包括动态的阅读问题,回答背景分级,并返回答案的结果。这是一个网络的综合应用,和建议您的HTML,jQuery的基本知识,PHP和MySQL的阅读这篇文章。

quiz.php
为了方便,我写的PHP和HTML在quiz.php文件。首先,我们将加载jQuery库和quizs.js文件以及考试答案的功能实现通过jQuery,并在适当的位置添加试题的HTML结构。
当页面加载并显示到jQuery调用时,我们必须读取标题信息。主题信息来自数据库,我们首先可以在数据表测试中添加标题和答案选项信息。

通过构造SQL语句,我们使用PHP查询数据库,读取问题和回答选项信息,并注意到此时我们不需要读取正确的答案。然后,主题信息被分配给JSON格式的变量JSON。

< PHP
include_once(连接。PHP); / /数据库连接

从测试命令中选择*;
查询= mysql_query美元($ SQL); / /数据查询
而($行= mysql_fetch_array($查询)){
答案(#美元=爆炸# # ',回答' } { $行); / /答案选项分别
{ } =数组(数组元
问题= > $行{ 'id' }。','行' } { 'question。$ / /主题
应答=$/应答选项
);
}
JSON = json_encode美元($ ARR); / / JSON格式的转换
>
我们得到一个字符串在JSON格式的数据,然后,像前一篇文章中,我们称jquizzy(),它是如下:

$(函数(){())
$(#测试容器)。Jquizzy({
问题:项目信息
sendresultsurl:数据。php / /地址
});
});
所以,如果我们的网页quiz.php再次,我们生成一个测试问题和检查源代码。我们只能看到JSON数据,但我们看不到试题的答案部分。
data.php
当调用测试题,有sendresultsurl选项,它是在用户完成,单击完成按钮,回到data.php发送一个Ajax交互请求,data.php会根据用户的情况,比较正确的答案,然后给用户评分。

include_once(连接。PHP); / /数据库连接

数据_request美元美元=AN{ }; / /得到的答案信息
答案=爆炸(|美元,美元的数据); / /数据分析
an_len美元=计数($答案- 1); / /物品数量

$从id命令中选择正确;
查询= mysql_query美元($ SQL); / /查询表
$ I = 0;
$ = 0;初始分数
q_right美元= 0; / /正确答案的数目
而($行= mysql_fetch_array($查询)){
如果($答案{ $我} = = $行{谈看法}){ / /正确的答案
美元的} { } { 'res ARR = 1; / /正确
q_right美元= 1; / / + 1正确的号码
其他{ }
美元的} { } { 'res ARR = 0; / /错误
}
美元+;
}
{ } =美元'score ARR的圆(×100(q_right美元/美元an_len)); / /计算总得分
回声json_encode($ ARR);
Data.php,第一次连接到数据库,接收和处理参数,一个是前端用户的答案,然后查询数据表,比较由用户的答案和数据表的话题提交正确答案,经相应治疗对比,计算出用户的答案得分,最终输出返回的JSON格式的数据前台电话。

quizs.js
我们已经修改了js代码,主要用于正面和背面的Ajax交互部分,对quizs.js核心部分如下:

如果(config.sendresultsurl!= NULL){
var;
无功myanswers =;
用户获取应答答案
为(R = 0;r<useranswers.length;R + +){
Collate.push({questionnumber + parseInt(R + 1,+ 10)
myanswers = myanswers + useranswers {红} + |;
}

ajax交互
美元。getJSON(config.sendresultsurl,{一}:myanswers,功能(JSON){)
如果(JSON = NULL){
警报(通信失败!);
其他{ }
无功corects = JSON { 'res};
美元。每个(corects,函数(指数、阵列){
ResultSet + = +(corects {指数} = 1 +(#指数+ 1)+:# +(指数+ 1)++);
});
结果=+ judgeskills(JSON。评分)+你的得分:+ + + +json.score ResultSet ''';
SuperContainer.find('。结果门将),Html(结果集)显示(500);
}
});
}
当用户的回答,用户的回答字符串组成如1 2 4 1 | | | | 3 |,然后将答案提交到后台的一美元的参数。getJSON,后背景对正确答案PHP,结果返回,返回的结果,如:{水库:1,0,1,1,0 } { 60 },得分,RES是答案的结果是五个问题的测试结果比,1说答案是正常的,0的人说,回答错误,得分。然后返回的结果进行处理,并将评价结果与每个问题总成绩获得,以及相应的HTML结构的生成。

MySQL
最后,附上MySQL数据表测验的结构。

如果不存在,创建表
` ID ` int(11)不为空auto_increment,
`问题` varchar(100)不为空,
`回答` varchar(500)不为空,
`正确` tinyint(2)非空,
主键(id)
= MyISAM引擎默认的字符集utf8);
你可以将信息添加到表中,你可以直接在源码包中导入quiz.sql文件。

以上是本文的全部内容,希望大家能喜欢。

相关文章

用Javascript实现对话框的教程

用Javascript实现对话框的教程

教程,对话框,电脑软件,Javascript,Javascript支持三种重要类型的对话框,这些对话框可以用来触发和警告,或者获得确认的输入或用户输入的类型。 在这里,我们将逐一查看每一个对话框: 警告对话框: 警告对话框用于向用户发出警告消息,就像输入字段要求…

一种将照片PS拍摄到低饱和度人性化

一种将照片PS拍摄到低饱和度人性化

照片,方法,饱和度,到低,电脑软件,本教程教你根据成人的照片处理效果 后来的小教程:如何处理低饱和度的人文照片 人文纪录片的处理方法很多,低饱和度的电影是比较常见的一种。接下来,让我们看看摄影师的盖子是怎么处理的。…

excel中公式excel库的快速查看

excel中公式excel库的快速查看

公式,快速,电脑软件,excel,在excel单元格中输入公式后,默认情况下只显示计算结果。因此,当我们想检查每个单元格中的输入公式是否正确时,我们必须双击编辑单元格,才能看出这显然非常麻烦。 事实上,在Excel中,您只需按下Ctrl键,组合键就可以同时显…

在HTML中插入Javascript代码的示例

在HTML中插入Javascript代码的示例

示例,代码,电脑软件,HTML,Javascript,Javascript代码可以包含在HTML文档中的任何地方,但也有以下最好的方法将Javascript包含在HTML文件中。 在部分… 在部分… 在…和…部分。 脚本和外部文件随后包含在… 在下面的部分中,我们将看到Javascript如何包含在差异…

PS图象处理软件绘制超现实立体齿轮

PS图象处理软件绘制超现实立体齿轮

绘制,图象,齿轮,处理软件,电脑软件,本教程向您介绍PS图象处理软件画超现实的立体齿轮的使用。效果非常漂亮。这个教程不是很难。转发的朋友喜欢一起学习。 本教程向您介绍PS图象处理软件画超现实的立体齿轮的使用,绘制完成效果。很漂亮。本…

经典正能量签名

经典正能量签名

能量,经典,电脑软件,你们都充满了积极的能量吗以下是正能量的签名。喜欢它。 1、一个人炫耀什么表现出内心的不足。 2,更多人关心的地方,是他最自卑的地方。 3,人的第一印象是要有好的或坏的习惯,认为一个人是好的,他们会爱一个人是坏的,会被否定…

增强mhash的功能的PHP实现

增强mhash的功能的PHP实现

增强,功能,电脑软件,mhash,PHP,今天,当使用mhash的PHP的加密功能,致命错误:调用未定义的函数mhash的() Mhash是内置函数的PHP,但它是用错了。 在这项研究中总结了两种方法。 1、进口php_mhash.dll扩展名的文件,除了进口libmhash.dll(的Mhash图书…

编写Windows下的php5.4和Xdebug全

编写Windows下的php5.4和Xdebug全

全记录,电脑软件,Windows,Xdebug,事实上,我的终极目标是编译php_xdebug.dll支持php5.4,而在这之前,有必要php5.4编译成功。 编译环境及相关软件包: 1。微软Visual C++ 2008 Express版SP1 2 Windows SDK 6.1 3.php SDK二进制工具 4、可靠的…

PS的合成酷趋势音乐海报教程

PS的合成酷趋势音乐海报教程

趋势,教程,音乐,海报,电脑软件,最好选择深色的背景色来突出主体。 潮水的海报有很强的视觉冲击力,这是在色彩渲染表现和材料的动态处理。对暗背景的最佳选择的颜色,以突出主体。至于材料,尽可能让每个材料的动态和冲击力,具体操作需要发挥最后…

高雅高雅非主流签名非主流

高雅高雅非主流签名非主流

高雅,非主流,电脑软件,我不在乎,但你不知道我有多少次想找到你的冲动。 二、没有奋斗到千钧一发之际你站在这里用什么说放弃。 三。任何不可信的解释都是多余的。 四,我的青春欠我一千万,所以在我们还清这笔钱之前,我不会让它走的。 五。每个人…

一种路由使用AngularJS的安全路由

一种路由使用AngularJS的安全路由

路由,方法,电脑软件,AngularJS,简介 因为它的出现,AngularJS用了很长时间。它是一个用于开发单页面应用的Javascript框架(SPA),它有一些很好的功能,如双向结合,教学,等。本文主要介绍角路由安全政策。它是一个客户端的安全框架,可以由角发展实现。我已经…

QQ空间(android)软件在手机上的功能

QQ空间(android)软件在手机上的功能

常见问题,空间,机上,在手,功能,手机的QQ空间(android)软件版本具有以下功能: 1。它可以由实时的朋友动态更新。 2,高品质的朋友照片浏览; 三.看看细节,写出一站式的社交体验。 4、好友动态可以快速评论、回复和转发。 5,一个新的个人主页,你可…