我认为是因为 if 语句,while 语句跳过了第一个。
但我需要 IF,我需要 WHILE。
这是我的代码:
if($row_antwoorden_select = mysqli_fetch_array($results_antwoorden_select)){
while($row_antwoorden_select = mysqli_fetch_array($results_antwoorden_select)){
$antwoorden .= "".$row_antwoorden_select['naam']."".$row_antwoorden_select['methode']." <a href='".$row_antwoorden_select['url']."'>Open</a><br>";
$once_info = "<h4>Antwoorden:</h4>".$select_menu."<br>";
}
}
最佳答案
看起来您的 if
语句只是检查查询是否有结果。如果这是真的,并且您真的想保留 if
语句,则可以更新它以使用 mysqli_num_rows()
相反:
if(mysqli_num_rows($results_antwoorden_select) > 0) {
while($row_antwoorden_select = mysqli_fetch_array($results_antwoorden_select)){
$antwoorden .= "".$row_antwoorden_select['naam']."".$row_antwoorden_select['methode']." <a href='".$row_antwoorden_select['url']."'>Open</a><br>";
$once_info = "<h4>Antwoorden:</h4>".$select_menu."<br>";
}
}
注意:如果没有任何结果,mysqli_fetch_array()
将返回 null
,所以技术上只是消除 if
block entirely 将使您的示例代码完美运行。
或者,如果您真的想要将 mysqli_fetch_array()
保留在 if
block 中,您可以将循环更新为 do/while
代替:
if($row_antwoorden_select = mysqli_fetch_array($results_antwoorden_select)) {
do {
$antwoorden .= "".$row_antwoorden_select['naam']."".$row_antwoorden_select['methode']." <a href='".$row_antwoorden_select['url']."'>Open</a><br>";
$once_info = "<h4>Antwoorden:</h4>".$select_menu."<br>";
} while($row_antwoorden_select = mysqli_fetch_array($results_antwoorden_select));
}
关于php - while 语句跳过第一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44477669/