php - 以 HTML 格式打印 MySQL 表

标签 php html mysql

我目前正在使用下面的代码来打印 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_* 。这已更改为 mysqli_*因为 PHP 中不推荐使用 mysql 前缀。希望这能回答您的问题。

关于php - 以 HTML 格式打印 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22123282/

相关文章:

php - 从3个表中按时间对mysql结果进行排序

php - 如何解析来自 google checkout 的 XML 响应?

html - 如何创建点击打开电子邮件编辑器的图片

javascript - 打印/预览忽略我的 Print.css

javascript - 动态生成时无法使 Bootstrap 选项卡工作

mysql - 尝试在 "LOAD INFILE"中使用CONCAT和SET

php - 为什么这个正则表达式在添加 anchor 时失败?

php - 如何在php中将树结构转换为平面数组

mysql - 将代码从 Oracle 8i 转换为 MySQL

mysql - 实时网站速度减慢太多