本文目录一览:
PHP 考试系统怎么生成随机试题,求代码写法.以选择题为例说明一下就行,假如从10个里抽3个,怎么在提交之
很简单,给你一个思路
你在数据库里面放10个题,
id questions options right_answer
1 china 是指哪个国家? A:中国;B:日本;C:美国 A
... ................ ............. ...
这样你从数据库中读取全部数据出来;
为了实现随机性,你可以用一个数组
?php
$query=$mysql_query("select * from '表名'");
$results=$mysql_fetch_row($query);
$rand=array_rand($results,3);//取出随机的三个问题,注意这里取得是三个键值
$question=array($result[$rand[0]],$result[$rand[1]],$result[$rand[2]]);//将取出的三个问题放进一个数组中
?
form action="目标地址(此处用本页面地址)" method="post"
?php
foreach($question as $values)
{
$options=explode(";",$values['options']);//用“;”将选项分割存进数组
echo $values['questions'];//显示题目
for($i=0;$icount($options);$i++){
echo "input type='radio' name=".$choice[$valest['id']]." value='A' ".$options[i]." /br";//输出选项
}
echo "----------------------------------------";//题目之间分隔符
}
//下面的代码是你接受form表单的页面,如果是本页面就直接接着上面的代码写
if(!empty($_POST[$choice]))
{
foreach($_POST[$choice] as $key= $data)
{
$question_id=$key;
$user_choice=$data;
if(mysql_query("select * from '表名' where id=".$key."and right_answer='".$data."'"))
{
//答案对如何处理。。。。
}
else
{
//答案不对处理办法。。。。
}
}
}
?
/form
随手现写的代码,可能你里面有错误,但是思路你可以借鉴下~
php考试系统
如果是我,我会将单选题,复选题,判断题分成三个文件或数据库中的三个表一个一"\r\n"分开识别,一个为记录设置id。然后获取数据,针对文本的做法:file()获得记录。然后使用mt_rand(1,文本中记录条数)获得要取出的随机题目,然后就是输出咯。针对数据库:首先获取数据库中记录的条数,mysql_num_rows(),然后mt_rand(1,获得的条数);然后从数据库中取出生成的随机数行,然后也是输出。对于你的这个问题不是太困难。
然后就是输出对吧,其实只要你将题目写入记录保存到文本或者数据库的时候加入html标签就可以了(记住替换换行,空格,然后把括号什么的换成字符实体。),然后再外面加上form标签就可以形成一个表单。理论上来说,这个算法是可行的,如果要多个题目也简单,建立三个数组,分别存储已经取得的题目的编号,如果题目取出就加入这个题目的编号,再取出其他题目,如果已经取出就在取其他的。我的只有方法,没有代码,只提供思路。如果有兴趣,加我qq1305167657.不过这一段时间没法上网——————高考啊。。。。。。高考之后交流。其次。。流量啊
求PHP和MySQL部门考核系统源代码,最好是基于WEB的
在线模拟考试系统基于PHP+Mysql开发,主要用于搭建模拟考试平台,支持多种题型和展现方式,是国内首款支持题冒题和自动评分与教师评分相结合的PHP开源在线模拟考试系统。使用本系统,您可以快速搭建用于模拟考试的网站平台,实现无纸化考试、真实考场模拟、知识强化练习等功能。可满足培训机构、学校、公司等机构各种考试需求。