【发布时间】:2015-11-28 21:13:26
【问题描述】:
我正在创建一个包含 10 个问题的随机生成的测验。生成随机问题很好,但我也想随机显示选择,与问题相同。
这是我目前正在使用的代码:
<?php
generate();
function generate(){
include('connection.php');
mysql_select_db('exam');
$result=mysql_query("SELECT * FROM questionaires
INNER JOIN choices ON questionaires.q_id=choices.q_id
WHERE RAND()<(SELECT ((10/COUNT(*))*10) FROM questionaires)
ORDER BY RAND() LIMIT 10");
$c=0;
echo "<table border='3' align='center' bordercolor='#CCCCCC'>
<tr>
<th>Number:</th>
<th>Question</th>
</tr>
";
while($row = mysql_fetch_array($result)){
$c++;
echo "<tr>";
echo "<td>" . $c . "</td>";
echo "<td>";
echo $row['question'] . "<br>";
echo "<input type='radio' name='ans'>".$row['choice_a']."</input><br>";
echo "<input type='radio' name='ans'>".$row['choice_b']."</input><br>";
echo "<input type='radio' name='ans'>".$row['choice_c']."</input><br>";
echo "<input type='radio' name='ans'>".$row['choice_d']."</input><br>";
echo "</td>";
echo "</tr>";
//}
//}
}
echo "</table>";
}
?>
我们将不胜感激。
【问题讨论】:
-
您可以将所有问题和/或答案添加到一个数组中,然后使用
array_shuffle方法对数组进行洗牌。 -
即使我使用不同的表格进行问题和选择,也使用不同的表格来获得正确答案