如何遍历复选框数组和MySQL数据库而不会重叠?

|
for($j = 0; $j < $length; $j++){
    while($answersRow = mysql_fetch_row($fetch)){
        if($answersRow[0] == $curr_answer_id[$j]){ 

            echo \"<input type=\'checkbox\' value=\'$answersRow[0]\' checked>$answersRow[1]</input> \";           
        } else {

            echo \"<input type=\'checkbox\' value=\'$answersRow[0]\'>$answersRow[1]</input> \";           
        }
    }
}
假设我的结果是ѭ1,,这就是我的难题。
for
循环表示the3ѭ。第一次循环,一切正常。然而,除此之外,由于内部有mysql指针,我们不再循环浏览ѭ4。我知道我可以使用
mysql_data_seek()
移动指针,但是对如何有效地使用指针一无所知。如果我将其移回0,那么它只会输出所有已检查内容。 我基本上想遍历数据库中的每个问题,但没有任何重叠。有点难以解释,如果无法正确解释这个简单问题,我深表歉意。我会尝试澄清是否需要。     
已邀请:
        您可以将第一个结果保存在数组中:
//> FIRST LOOP
  while($row = mysql_fetch_assoc($query)) {
    $rows[] = $row; //> Saving in the $rows array
    //> All your code from your first loop
  }

//> SECOND LOOP    
  foreach($rows as $v) {
   //> All your code you need for your second loop without any additional query
  }
也很抱歉,如果我误解了您的问题,但不清楚您要什么 附录 在更好地阅读了您的问题之后,如果我理解正确,那么您只想在一个循环中就可以达到所有目的。在这种情况下,您可以像这样在第一时间保存所需的html:
$firstLoop = \'\';
$secondLoop = \'\';
while() {
   $firstLoop .= \'<option> [...]\';    
   $secondLoop .= \'<div> [...]\';
}
在这一点上,您已经构建了所需的html,它们位于
$firstLoop
$secondLoop
中。这当然比任何其他解决方案都快     

要回复问题请先登录注册