php - 试图让 MySQL 结果水平显示

标签 php html css mysql mysqli

我正在创建一个网页,根据他们的经验水平列出游戏中的十个 Angular 色,并用一张与每个 Angular 色相关的图片来显示它们。我的代码有效,但当我希望它排成一行时,输出在一列中。我确实在这里看到了非常相似的问题:MySQL data from database align horizontally我试着效仿那个例子,但要么以错误告终,要么面孔没有出现。我是一个爱好者,我只是为 friend 做这个,所以我的知识很基础。

相关代码:

<table border="3" width="90%">
<tr>
<th width="25%">XP</th>
<td>
<?php 
$resultgood = mysqli_query($con,"SELECT * FROM Life WHERE goodxp > 0 ORDER BY goodxp DESC LIMIT 10");
    while($row = mysqli_fetch_array($resultgood))
    {
    $face = mysqli_query($con,"SELECT face FROM Description WHERE charname='$row[charname]'");
    $row = mysqli_fetch_row($face);
    $face = $row[0];
    $name = mysqli_query($con,"SELECT charname FROM Life WHERE charname='$row[charname]'");
    $row = mysqli_fetch_row($name);
    $name = $row[0];
    echo "<left>";
    echo "<table border='1'>";
    echo "<tr><td>";
    echo "<img src='pictures/$face' alt='$name' border='2'>";
    echo "</td></tr>";
    echo "</table>";
    echo "<br>";
    }
?>
</td>
</tr>
</table>

有人有什么建议吗?谢谢!


因此,在按照下面 Bombelman 的建议进行操作后,我开始使用它了。万一其他人遇到这个问题,这里是工作代码:

<tr>
<th width="25%">Goody Two Shoes</th>
<td><?php 
echo "<table border='1'><tr>";
echo "<left>";
$resultgood = mysqli_query($con,"SELECT * FROM Life WHERE goodxp > 0 ORDER BY goodxp DESC LIMIT 10");
    while($row = mysqli_fetch_array($resultgood))
    {
    $face = mysqli_query($con,"SELECT face FROM Description WHERE charname='$row[charname]'");
    $row = mysqli_fetch_row($face);
    $face = $row[0];
    $name = mysqli_query($con,"SELECT charname FROM Life WHERE charname='$row[charname]'");
    $row = mysqli_fetch_row($name);
    $name = $row[0];
    echo "<td>";
    echo "<img src='pictures/$face' alt='$name' border='2'>";
    echo "</td>";
    }
    echo "</tr>";
    echo "</table>";
?></td>
</tr>

最佳答案

将“table”和“row”标签放在循环之外,只在“td”标签之间循环结果。

查看您的脚本,您有几个表。

确保只有 < td > 和 标签在 while 循环中。 输出应该类似于我的示例。

希望对您有所帮助!

<table style="width:100%">

  <tr>
    <td>Character 1</td>
    <td>Character 2</td>
    <td>Character 3</td>
    <td>Character 4</td>
    <td>Character 5</td>
  </tr>

</table>

关于php - 试图让 MySQL 结果水平显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48040259/

相关文章:

php - 在 laravel 5.2 中提交表单后如何在文本字段中保留值

javascript - 使用 javascript 动态禁用选择框

php - Laravel Homestead 中 PHP 错误日志的位置

javascript - 在单个页面上显示多个 javascript 幻灯片时出现问题

html - 如何从增加高度的相对位置移除额外空间?

php - 使用带有mysql查询结果的php获取父节点下的所有子节点、孙节点等节点

html - <p> 标签没有按预期 float

html - 页面在 firefox 和 opera 中显示不正确

html - div飘错了

jquery - 使用 JQuery/JQM 动态创建复选框时保留 CSS