[英]Printing out MySQL tables in HTML
我目前正在使用下面的代码来打印出MySQL表。 但是,当我打印多行时,格式很难看。 我可以通过什么方式或命令创建类似于Tab键的列,以使其更美观?
$google= mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($google)){
foreach($row as $cname => $cvalue){
print "$cvalue\t <tr>";
}
print "<br>";
}
使用用户输入来打印查询。 使用
<form action="google.php" method="post">
命令。 我也在寻找一种在与我接受用户输入的HTML页面相同的页面上打印此表的方法。
您的代码相当不错,只需要添加HTML即可使其看起来更好。 使用表(尚未经过测试,但应该可以使用):
$google = mysqli_query($query) or die(mysqli_error());
echo '<table>';
while($row = mysqli_fetch_assoc($google)) {
echo '<tr>';
foreach($row as $cvalue) {
print '<td>'.$cvalue.'</td>';
}
echo '</tr>';
}
echo '</table>';
这是一种输出MySQL表的快速而肮脏的方法,但是如果您还希望显示列的名称,则事情会变得有些棘手。 另外,如果您的结果包含特殊字符(例如“>”),则可能会使输出混乱。 如果发生这种情况,只需查找htmlspecialchars()
的文档。
如果希望此表与表单显示在同一页面上,只需创建一个提交按钮,然后像这样检查PHP中的值:
if (isset($_POST['SubmitButtonNameHere']) { ... }
我不确定您的表单结构,因此该代码可能需要不同才能确定表单是否已提交。 您可以将用于创建表的代码放在大括号内,并将表单的代码放在if语句的上方或下方。
<tr>
是一个HTML元素,用于向<table>
元素添加行。 <td>
元素将单元格添加到这些行。 另外,您的代码使用的是mysql_*
。 由于PHP中不推荐使用mysql前缀,因此将其更改为mysqli_*
。 希望这能回答您的问题。
只需使用此代码即可:)
$google= mysql_query($query) or die(mysql_error());
echo "<table><tbody>";
while($row = mysql_fetch_assoc($google)){
foreach($row as $cname => $cvalue){
echo "<tr><td>".$cname."</td><td>".$cvalue."</td></tr>";
}
echo "</tbody></table>";
完成:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.