php mysql 在线考试系统

原创
2016-06-08 17:25:57 767浏览

一款简单的php教程 mysql教程考试系统,实例方法是判断题目数组是否为空,为空则从题库中随机取出12道题 id

include './inc/header.php';
if($_session['arr'] == ''){ #判断题目数组是否为空,为空则从题库中随机取出12道题 id
$sql = 'select * from an';
$select = $db->select($sql);
for($i=0;$i $aid .= $select[$i]['id'].',';
}
$arr = explode(',',substr($aid,0,strlen($aid)-1));
shuffle($arr);
$_session['arr'] = array_slice($arr,0,12);
}
$array = $_session['arr'];
if($_server['request_method'] == "post"){
if($_session['arr1'] == ""){ #arr1存的是已答题的id
$ary = $array;
array_shift($ary); #每答完一道题后,删除数组第一位
$_session['arr1'] = $ary;
}else{
$ary = $_session['arr1'];
array_shift($ary);
$_session['arr1'] = $ary;
}
$id = $_post['id'];
$answer = $_post['answer'];
$sqq = 'select * from an where id='.$id.' and answer="'.$answer.'"';
$qus = mysql_query($sqq);
$rows = @mysql_num_rows($qus);
if($rows){
$_session['right'] .= $id.','; #将答对题id存到session['right']
$rightarr = explode(',',substr($_session['right'],0,strlen($_session['right'])-1)); #判断对题数
if(count($rightarr) $sql2 = 'select * from an where id='.$ary[0];
$sel = $db->select($sql2);
}elseif(count($rightarr) == 10){ #如果等于10则跳出此次问答
$time = time();
$_session['jiang'] = md5($time);
#echo '';
$success = array('second'=>'3','url'=>'//m.sbmmt.com/m/faq/right.php?uid='.$time,'title'=>'答对十题','right'=>'恭喜你,你已连续答对十道题,将跳转到兑奖页面。');
$smarty->assign('msg',$success);
$smarty->display('success.html');
exit();
}
}else{
$_session['error'] .= $id.','; #将答错题id存到session['error']
$errorarr = explode(',',substr($_session['error'],0,strlen($_session['error'])-1)); #判断错题数
if(count($errorarr) $sql2 = 'select * from an where id='.$ary[0];
$sel = $db->select($sql2);
}elseif(count($errorarr) == 2){ #如果答错两题,则重新计数
unset($_session['right']);
unset($_session['error']);
unset($_session['arr1']);
unset($_session['arr']);
unset($_session['num']);
session_destroy();
#echo '';
$success = array('second'=>'3','url'=>'//m.sbmmt.com/m/faq/index.php','title'=>'答错两题','error'=>'对不起,你已连续答错两题,将重新计算');
$smarty->assign('msg',$success);
$smarty->display('success.html');
exit();
}
}
echo 'right:'.$_session['right'].'
';
echo 'error:'.$_session['error'].'
';
}else{
$sqll = 'select * from an where id='.$array[0];
$sel = $db->select($sqll);
}
if(isset($_session['num'])){ #目前答第几题
$num = $_session['num'] + 1;
$_session['num'] = $num;
#echo $_session['num'].'
';
#echo $num;
}else{
$num = 1;
$_session['num'] = $num;
}
$smarty->assign('num',$num);
$smarty->assign('ob',$sel);
$smarty->display('index.html');

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。