PHP / HTML - 表未正确显示
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP / HTML - 表未正确显示相关的知识,希望对你有一定的参考价值。
目前我有一个链接到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;
而不是多个中心应答。
另一答案
Echo <tr>
标签里面循环。
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>';
}
另一答案
。在while循环中放置<tr>
标签
<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>
<?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);
?>
</table>
以上是关于PHP / HTML - 表未正确显示的主要内容,如果未能解决你的问题,请参考以下文章