Heim >Datenbank >MySQL-Tutorial >Wie kann ich HTML-Tabellen dynamisch aus MySQL-Daten generieren, ohne Header manuell anzugeben?
Dynamische HTML-Tabellenerstellung mit MySQL und PHP
Möglicherweise sind Sie auf Situationen gestoßen, in denen Sie HTML-Tabellen erstellen müssen, die mit Daten aus MySQL gefüllt sind. Die Spaltenüberschriften der Tabelle ändern sich jedoch häufig. Das manuelle Aktualisieren des Codes, um diese Änderungen widerzuspiegeln, kann mühsam sein. Hier ist eine Lösung zum dynamischen Generieren von HTML-Tabellen aus MySQL-Daten, ohne dass eine manuelle Header-Spezifikation erforderlich ist:
MySQLi-Lösung:
Elemente für Spaltenüberschriften.
Tags.
| Beispiel: <?php // Create a MySQLi connection $mysqli = new mysqli('localhost', 'username', 'password', 'database'); function outputMySQLToHTMLTable(mysqli $mysqli, string $table) { // Check table existence $tableNames = array_column($mysqli->query('SHOW TABLES')->fetch_all(), 0); if (!in_array($table, $tableNames, true)) { throw new UnexpectedValueException('Unknown table name provided!'); } // Fetch data and metadata $res = $mysqli->query('SELECT * FROM ' . $table); $data = $res->fetch_all(MYSQLI_ASSOC); echo '<table>'; // Display table header echo '<thead>'; echo '<tr>'; foreach ($res->fetch_fields() as $column) { echo '<th>' . htmlspecialchars($column->name) . '</th>'; } echo '</tr>'; echo '</thead>'; // Display table rows if ($data) { foreach ($data as $row) { echo '<tr>'; foreach ($row as $cell) { echo '<td>' . htmlspecialchars($cell) . '</td>'; } echo '</tr>'; } } else { echo '<tr><td colspan="' . $res->field_count . '">No records in the table!</td></tr>'; } echo '</table>'; } // Output the table outputMySQLToHTMLTable($mysqli, 'user'); PDO-Lösung: Der PDO-Ansatz ist ähnlich, aber Sie müssen fetchAll(PDO::FETCH_COLUMN) für die Validierung des Tabellennamens und getColumnMeta() verwenden. für Spaltenmetadaten. Dieser Ansatz stellt sicher, dass Ihr Code dynamisch HTML-Tabellen basierend auf der neuesten Tabellenstruktur in MySQL generieren kann, sodass keine manuellen Header-Aktualisierungen erforderlich sind. Das obige ist der detaillierte Inhalt vonWie kann ich HTML-Tabellen dynamisch aus MySQL-Daten generieren, ohne Header manuell anzugeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website! mysql html define if for select mysqli pdo using function this display column input table td tr th database Stellungnahme: Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn Vorheriger Artikel:Wie kann ich Binärdaten in MySQL speichern und abrufen?Nächster Artikel:Wie kann ich Binärdaten in MySQL speichern und abrufen? |
---|