我想阅读toefl测试。我有两个名为'id_reading'和'soal_reading'的表。 id_reading表包含id和text。 soal_reading包含id,question,option a b c d和answer。所以我想显示那些表中的数据。但我想在soal_reading表中随机显示除id列之外的所有列。我尝试但它不会随机。请帮忙。
<?php
include "conection.php";
$query = mysql_query("
SELECT id_reading.id
, text
, id_reading.text
, soal_reading.pertanyaan
, a
, b
, c
, d
, jawaban
from id_reading
, soal_reading
where id_reading.id = soal_reading.id
");
if ($query) {
while ($row = mysql_fetch_array($query)) {
echo "
<tr>
<td>".$row['id']."</td>
<td>".$row['text']."</td>";
$q = mysql_query("SELECT * from soal_reading order by rand()");
if ($q) {
while ($r = mysql_fetch_array($query)) {
echo "
<td>".$r['pertanyaan']."</td>
<td>".$r['a']."</td>
<td>".$r['b']."</td>
<td>".$r['c']."</td>
<td>".$r['d']."</td>
<td>".$r['jawaban']."</td>
<td>
<a href=\"edit_reading.php?id=".$row['id']."\">Edit</a> |
<a href=\"hapus_reading.php?id=".$row['id']."\">Delete</a>
</td>
</tr>";
}
}
}
}
?>
答案 0 :(得分:0)
您的查询以随机方式设置问题但不是问题中的字段。因此,如果您有3个问题,例如Q1,Q2,Q3,则会以随机方式排序,而不是字段。
我建议您将$r['a'] .... $r['d']
放入数组中,然后从0 to count($array)
中提取一个数字以获得可能的答案,并从数组中删除该元素。这样做直到提取所有可能的答案。 (count($array)==0)
。
总之,您的查询为您提供了问题的随机顺序,在PHP中,您可以随机输入您的字段。
对于某些代码,请发表评论。 再见