PHP Mysql对html表的查询仅插入到第一个表行
我正在尝试将所有数据打印到一个html表中,这是可行的,但只适用于第一个表行 我的PHP代码:PHP Mysql对html表的查询仅插入到第一个表行,php,mysql,html-table,Php,Mysql,Html Table,我正在尝试将所有数据打印到一个html表中,这是可行的,但只适用于第一个表行 我的PHP代码: $data = ""; while ($row = mysqli_fetch_assoc($result)) { $data = "<tr> <td>" . $row['name'] . "</td> <td>" . $row['email'] . "</td>
$data = "";
while ($row = mysqli_fetch_assoc($result)) {
$data = "<tr>
<td>" . $row['name'] . "</td>
<td>" . $row['email'] . "</td>
<td>" . $row['message'] . "</td>
<td>" . $row['created'] . "</td>
</tr>";
}
$data=”“;
while($row=mysqli\u fetch\u assoc($result)){
$data=”
“$row['name']”
“$row['email']”
“$row['message']”
“$row['created']”
";
}
我的html代码:
<!DOCTYPE html>
<html>
<body>
<table border="1">
<tr>
<th width="15%">Name</th>
<th width="15%">Email</th>
<th width="50%">Message</th>
<th width="20%">Created</th>
</tr>
<?= $data ?>
</table>
</body>
</html>
名称
电子邮件
消息
创建
如何使表自动插入更多行和MySQL数据
这两个代码都在1个php文件中。在我看来,您是在为while循环的每个迭代将$data重置为最新的行,而不是向该变量添加新的html和数据。而是使用:
$data .= "<tr..."
$data.=“代替
$data = "<tr>
$data=”
使用
$data.=”
这意味着您要在循环中追加所有tr
$data = "<tr>
<td>" . $row['name'] . "</td>
<td>" . $row['email'] . "</td>
<td>" . $row['message'] . "</td>
<td>" . $row['created'] . "</td>
</tr>";
“$row['name']”
“$row['email']”
“$row['message']”
“$row['created']”
";
变成
$data .= "<tr>
<td>" . $row['name'] . "</td>
<td>" . $row['email'] . "</td>
<td>" . $row['message'] . "</td>
<td>" . $row['created'] . "</td>
</tr>";
$data.=”
“$row['name']”
“$row['email']”
“$row['message']”
“$row['created']”
";
$data .= "<tr>
<td>" . $row['name'] . "</td>
<td>" . $row['email'] . "</td>
<td>" . $row['message'] . "</td>
<td>" . $row['created'] . "</td>
</tr>";