Я пытаюсь отобразить таблицу SQL с помощью PHP, передав только имя таблицы, а затем вычислив количество строк и столбцов для правильного отображения таблицы.
До сих пор мне удалось получить имена столбцов, но у меня возникли проблемы с отображением большего, чем значение первого столбца, например:
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>";
}
Любая помощь чрезвычайно ценится, наряду с любыми советами о том, как я могу сделать то, что у меня уже есть, более эффективно.
Спасибо!