我试图通过php将mysql表转储到html页面上,但遇到了一些问题。
目前我有(使用bootstrap 4):
require('db.php');
$sql = "SELECT * FROM `users`;";
$table = "";
$result = mysqli_query($connection, $sql) or die(mysql_error());
$table = "<table class='table table-hover table-dark'>";
$table .= "<thread>";
$table .= "<tr>";
$fieldsInfo = $result->fetch_fields();
foreach($fieldsInfo as $fieldinfo)
$table .= "<th scope='col'>{$fieldinfo->name}</th>";
$table .= "</tr>";
$table .= "</thead>";
$table .= "<tbody>";
while ($row = $result->fetch_assoc()) {
$table .= "<tr>";
foreach ($row as $columnValue) {
$table .= "<td>$columnValue</td>";
}
$table .= "</tr>";
$table .= "</tbody>";
$table .= "</table>";
}
echo $table;
?>
我的结果是这样的:表显示
我想这就是我要放的地方 <tr>
以及 </tr>
值,但我尝试将它们放在循环的内部和外部。当放置在循环中时,我的表将所有列值返回到第一个表标题中。我通过firefox‘inspect element’进一步检查了代码,发现表中的第二行实际上超出了 <table>
这对我来说毫无意义,因为我的循环显然是在我使用 </table>
.
希望有人能给我一些启示,我刚刚开始使用php,所以我对它不是很在行;但我想学习。
2条答案
按热度按时间iibxawm41#
你的
<tr>
以及</tr>
标签放在那里看起来不错。问题是收尾</tbody>
以及</table>
标记位于while循环中。把它们移下来,它就应该出来了。vd2z7a6w2#
使用此代码: