MySQL と PHP を使用した動的 HTML テーブルの作成
MySQL からのデータが入力された HTML テーブルを作成する必要がある状況に遭遇したことがあるかもしれません。ただし、テーブルの列ヘッダーは頻繁に変更されます。これらの変更を反映するためにコードを手動で更新するのは面倒な場合があります。ここでは、手動のヘッダー指定を必要とせずに、MySQL データから HTML テーブルを動的に生成するソリューションを示します:
MySQLi ソリューション:
列ヘッダーの要素。
タグ。
| 例: <?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 ソリューション: PDO アプローチは似ていますが、テーブル名の検証には fetchAll(PDO::FETCH_COLUMN) を使用する必要があります。列メタデータの getColumnMeta()。 このアプローチにより、コードは MySQL の最新のテーブル構造に基づいて HTML テーブルを動的に生成できるようになり、ヘッダーを手動で更新する必要がなくなります。 以上がヘッダーを手動で指定せずに、MySQL データから HTML テーブルを動的に生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。 ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
function_exists() はカスタム関数を決定できません
Function test () {return true;} if (function_exists ('test')) {echo "テストは関数です";
から 2024-04-29 11:01:01
0
3
2415
Google Chromeのモバイル版を表示する方法
こんにちは、先生、Google Chrome をモバイル版に変更するにはどうすればよいですか?
から 2024-04-23 00:22:19
0
11
2544
親ウィンドウには出力がありません
document.onclick = function(){ window.opener.document.write('私は子ウィンドウの出力です');
から 2024-04-18 23:52:34
0
1
2036
関連トピック
詳細>
|
---|