【发布时间】:2013-11-27 22:59:43
【问题描述】:
我正在尝试使用 PHP 显示一个 SQL 表,只需传入表名,然后计算出正确显示表的行数和列数。
到目前为止,我已经设法检索到列名,但是我无法让它显示超过第一列的值,如下所示:
ID | lastName | firstname | etc..
10 | 11 | 13 | 16 | 19 | etc..
举个例子。
这是我检索列标题的代码:
$STH = $conn->prepare("SELECT * FROM $tableName");
$STH->execute();
$STH = $conn->query("SELECT * FROM $tableName");
$STH->setFetchMode(PDO::FETCH_ASSOC);
$headerQuery = $conn->prepare("DESCRIBE employees");
$headerQuery->execute();
$table_fields = $headerQuery->fetchAll(PDO::FETCH_COLUMN);
$num_fields = count($table_fields);
echo "<table border='1'>
<tr>";
for ($x=0;$x<$num_fields;$x++)
{
echo "<th>$table_fields[$x]</th>";
}
echo "</tr>";
这里是检索值的代码,它不能正常工作:
for ($x=0;$x<$num_fields;$x++)
{
echo "<tr>";
foreach ($table_fields as &$fieldname)
{
while($row = $STH->fetch())
{
echo "<td>" . $row[$fieldname] . "</td>";
}
}
echo "</tr>";
}
非常感谢任何帮助,以及任何关于如何更有效地完成我已经完成的工作的建议。
谢谢!
【问题讨论】:
-
$STH 中的查询是什么
-
糟糕,抱歉 - 我错过了,将其添加到主要问题中。