PHP查询结果生成表格异常:仅首行显示正常其余数据无法正确加载
问题分析与修复
你遇到的问题根源很直观:你在while循环内部每次都输出了</table>标签。这会导致第一次循环时表格就被提前闭合,后续的<tr>数据行都被渲染到了表格外部,自然无法正确显示在表格结构里。
修正后的代码
$Sql = "SELECT Registration_Number,Name FROM vta"; $Result = $conn->Query($Sql); if ($Result->num_rows > 0) { echo "<table border=2> <tr><th>Registration_Number</th> <th>Name</th></tr>"; while ($Row = $Result->fetch_assoc()) { echo "<tr><td>$Row[Registration_Number]</td><td>$Row[Name]</td></tr>"; } // 把表格闭合标签移到循环外,所有数据行输出完成后再关闭表格 echo "</table>"; } $conn->Close();
关键修改说明
核心就是调整</table>的位置:从循环内部移到循环结束之后、if语句闭合之前。这样所有查询到的数据行都会被完整包裹在<table>标签对之间,就能渲染出正常的完整表格了。
内容的提问来源于stack exchange,提问作者A.t
相关产品推荐
相关产品推荐

