查询总是只返回最近添加的数据


Query always returns recently added data only

我正试图显示我在mysql中创建的数据库中的所有数据。

我使用的是这个代码:

<table border= "3">
    <tr>
        <th>ID</th>
        <th>Game Name</th>
    </tr>
    <?php
    $query = "SELECT * FROM `test_game_name`";
    $result = mysql_query($query);
    while($row = mysql_fetch_array($result)) {
        $id = $row['game_id'];
        $name = $row['game_name'];
    }
    ?>
    <tr>
        <td><?php echo $id; ?></td>
        <td><?php echo $name; ?></td>
    </tr>
</table>

我的问题是,并不是所有的数据都显示出来,只有我最近添加的数据。我认为SELECT *意味着选择所有数据。

但我不知道问题出在哪里,为什么它没有显示所有的数据,有人会碰巧知道吗?

您需要在while循环中添加td

<?php
$query = "SELECT * FROM `test_game_name`";
$result = mysql_query($query);
?>
<tr>
    <?php
    while ($row = mysql_fetch_array($result)) {
        $id = $row['game_id'];
        $name = $row['game_name'];
        echo " <td>" . $id . "</td>";
        echo " <td>" . $name . "</td>";
    }
    ?>
</tr>

注意:-mysql不推荐使用mysqli和PDO

尝试使用这个:

<table border= "3">
<tr>
       <th>ID</th>
        <th>Game Name</th>
 </tr>
 <?php
 $query = "SELECT * FROM `test_game_name`";
 $result = mysql_query($query); 
 while($row = mysql_fetch_array($result))
 {
     $id = $row['game_id'];
     $name = $row['game_name'];
 ?>
     <tr>
         <td><?php echo $id; ?></td> 
         <td><?php echo $name; ?></td> 
     </tr>
 <?php } ?>
 </table>

将此添加到内部while,

<tr>
    <td><?php echo $id; ?></td>
    <td><?php echo $name; ?></td>
</tr>

最终代码

while($row = mysql_fetch_array($result)) {
    $id = $row['game_id'];
    $name = $row['game_name']; ?>
   <tr>
      <td><?php echo $id; ?></td>
      <td><?php echo $name; ?></td>
   </tr>
<?php } ?>

切换到mysqli_*PDO,而不是不推荐使用的mysql_*

如果您并没有连接到数据库,那么按照下面的代码进行操作会对您有所帮助。

<table border= "3">
        <tr>
            <th>ID</th>
            <th>Game Name</th>
        </tr>
        <?php
        $link=mysql_connect("localhost", "root","");
        mysql_select_db('dbname', $link);
        $query = "SELECT * FROM `test_game_name`";
        $result = mysql_query($query);
        while($row = mysql_fetch_array($result)) {?>
             <tr>
                 <td><?php echo $row['game_id']; ?></td>
                 <td><?php echo $row['game_name']; ?></td>
             </tr>
       <?php }
        ?>
    </table>