第二个循环对第一个循环的第一个循环正常工作,之后只执行没有第二个循环的第一个循环。有人告诉我这段代码中的错误:
<form method="POST" action="#">
<?php
$no=0;
while($soal=mysql_fetch_array($result)){
$now=++$no;
echo $now.". ".$soal['soal']."<p>";
while($jawaban=mysql_fetch_array($result2)){ ;
?>
<p>
<input type=radio name="grup[<?php $now?>]" value="<?php $jawaban['idJawaban']?>"><?php echo $jawaban['jawaban']?><br>
<?php
}
}
?>
<input type="submit" value="submit">
</form>
答案 0 :(得分:1)
想想为什么循环首先停止! while (..)
需要在某个时候停止。这一点是mysql_fetch_array($result2)
最终返回false
的时候。为什么它会返回false
?因为您在结果集的末尾。尝试从此结果集中获取记录将返回false
,因为该集已用尽。重新启动while
循环不会改变它。
您需要mysql_data_seek
回到结果集的开头,或者您需要遍历结果集一次并将其所有数据存储在一个数组中,您可以反复循环。 / p>