Php 我的双倍while循环不是';不起作用。这是怎么回事?

Php 我的双倍while循环不是';不起作用。这是怎么回事?,php,loops,while-loop,Php,Loops,While Loop,我正在尝试使用while循环来输出一些带有文本的缩略图,但是只有第一个工作正常,第二个甚至没有显示。我没有犯错,所以我不知道我做错了什么 <?php require_once("inc/config.inc.php"); $sql = "SELECT * FROM games ORDER BY RAND() LIMIT 20"; $result = $mysqli->query($sql); $row = $result->fetch_assoc(); $

我正在尝试使用while循环来输出一些带有文本的缩略图,但是只有第一个
工作正常,第二个甚至没有显示。我没有犯错,所以我不知道我做错了什么

<?php
  require_once("inc/config.inc.php");
  $sql = "SELECT * FROM games ORDER BY RAND() LIMIT 20";
  $result = $mysqli->query($sql);
  $row = $result->fetch_assoc();

  $counter = 0;
  $max = 5;
  $counter2 = 0;
  $max2 = 5;
?>

  <table style="table-layout:fixed;width:100%;text-align:center;" align="center" valign="center">
    <?php 
      echo "<tr>";
      while (($row = $result->fetch_assoc()) and ($counter < $max)) {echo "<td><a class='nogame' href='play.php?g=". $row['pid'] ."'><img src='". $tpath . $row['thumb'] ."'><br>". $row['name'] ."</a></td>";$counter++;}
      echo "</tr>";
      echo "<tr>";
      while (($row = $result->fetch_assoc()) and ($counter2 < $max2)) {echo "<td><a class='nogame' href='play.php?g=". $row['pid'] ."'><img src='". $tpath . $row['thumb'] ."'><br>". $row['name'] ."</a></td>";$counter2++;}
      echo "</tr>";
    ?>
  </table>

我希望你能帮助我。对不起,如果我犯了愚蠢的错误。我是PHP新手。 还有,我试着用谷歌搜索,但没用


问候

这里没有任何明显的问题会导致您的问题。 可能的情况是,数据库中的记录少于6条(6条,因为您“吃掉”了第5行中的一条记录)。
另外,请查看页面源中是否存在第二对tr-s。否则,代码会因某种原因而失效。

您需要重置两个查询之间的结果集。在第一个while循环结束时,结果集没有更多要返回的记录,因此循环终止。当第二个循环开始时,它立即终止,因为没有记录。我怀疑循环之间的
$row->data\u seek(0)
会满足您的要求。您的第一个循环会获取所有结果行。然后第二个循环就没有什么可处理的了。啊哇!谢谢你们两位<代码>$result->数据搜索(0)修复了该问题。非常感谢。:)