目前我有一个链接到 MySQL 数据库的表,它从数据库获取行。
它工作完美并且数组显示良好。
但是,普通表格不是每次向下显示一个,而是并排显示,如下所示。
出于隐私考虑,玩家姓名被隐藏。但空白的空间就是玩家所在的位置。
这是数据库连接文件:
<?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/