PHP/HTML - 表格无法正确显示

标签 php html mysql sql html-table

目前我有一个链接到 MySQL 数据库的表,它从数据库获取行。

它工作完美并且数组显示良好。

但是,普通表格不是每次向下显示一个,而是并排显示,如下所示。

Table Display

出于隐私考虑,玩家姓名被隐藏。但空白的空间就是玩家所在的位置。

这是数据库连接文件:

<?php
// MySQL Connection Details
$mysql_host = ""; // Host name 
$mysql_username = ""; // Mysql username 
$mysql_password = ""; // Mysql password 
$mysql_database = ""; // Database name 
$mysql_table = ""; // Table name 

// MySQL Connection
$con = mysqli_connect("$mysql_host","$mysql_username","$mysql_password","$mysql_database");

// MySQL Error Logging
if (mysqli_connect_errno())
  {
  echo "MySQL Connection Failed: " . mysqli_connect_error();
  }

$sql = "SELECT * FROM $mysql_table";
$result = $con->query($sql);  

?>

下面是它在主 php 文件中的显示方式。

<table id="ldr_table">
    <tr class="lb_tb_hd" align="center">
        <td>Player</td>
        <td>Points</td>
        <td>Wins</td>
        <td>Kills</td>
        <td>Deaths</td>
        <td>Played</td>
    </tr>
    <tr class="ldr_alt">
        <?php
        require('{db connection file}');
        while($row = mysqli_fetch_array($result, MYSQLI_BOTH))
        {   
        echo '<td><center>' . $row['player_name'] . '</center></td>';
        echo '<td><center>' . $row['score'] . '</center></td>';
        echo '<td><center>' . $row['games_won'] . '</center></td>';
        echo '<td><center>' . $row['kills'] . '</center></td>';
        echo '<td><center>' . $row['deaths'] . '</center></td>';
        echo '<td><center>' . $row['games_played'] . '</center></td>';
        }
        mysqli_close($con);
        ?>
    </tr>
</table>

我尝试了几种方法,包括对格式没有影响的 foreach

如果需要其他文件,我很乐意在此处展示。

最佳答案

您需要为每个 SQL 结果创建一个新行

<?php
require('{db connection file}');
while($row = mysqli_fetch_array($result, MYSQLI_BOTH))
{
     echo '<tr class="ldr_alt">';
     echo '<td><center>' . $row['player_name'] . '</center></td>';
     echo '<td><center>' . $row['score'] . '</center></td>';
     echo '<td><center>' . $row['games_won'] . '</center></td>';
     echo '<td><center>' . $row['kills'] . '</center></td>';
     echo '<td><center>' . $row['deaths'] . '</center></td>';
     echo '<td><center>' . $row['games_played'] . '</center></td>';
     echo '</tr>';
}
mysqli_close($con);

?>

PS:使用

text-align: center;

而不是多个中心应答器。

关于PHP/HTML - 表格无法正确显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25146587/

相关文章:

html - 如何使用 W3 Sidebar 和 w3-bar-item w3-button 在按钮下显示文本?

html - 负 px 或大数 px - 哪个更好

php - 计算 LOAD DATA INFILE 插入了多少行

mysql - 连接多个表的计数

php - 找出数据库中列出的 "not"目录中有哪些文件

php - 先进的首句和末句功能

php - 无法从 mySQL 的行中获取数据以打印出来-PHP

html - 匿名表格单元格的范围 : Is Gecko or Webkit right?

mysql - 多表连接和多个表的最新时间戳

php - 将 sql 与当前登录用户相加