ホームページ >データベース >mysql チュートリアル >MySQL から取得した HTML テーブルの行を並べ替えるにはどうすればよいですか?
このシナリオでは、MySQL データベースから取得したデータが入力された HTML テーブルがあります。目標は、列ヘッダー (タイプ、説明、記録日、追加日) をクリックしてテーブルの行を並べ替えることです。
これを実現するには、PHP と MySQL を活用して並べ替えロジックを処理できます。
HTML テーブルは次のように構造化されています:
<table> <thead> <tr> <th><a href="mypage.php?sort=type">Type</a></th> <th><a href="mypage.php?sort=desc">Description</a></th> <th><a href="mypage.php?sort=recorded">Recorded Date</a></th> <th><a href="mypage.php?sort=added">Added Date</a></th> </tr> </thead> <tbody> <?php while($row = mysql_fetch_array($result)): ?> <tr> <td><?php echo $row['type']; ?></td> <td><?php echo $row['description']; ?></td> <td><?php echo $row['recorded_date']; ?></td> <td><?php echo $row['added_date']; ?></td> </tr> <?php endwhile; ?> </tbody> </table>
PHP コードでは、$ に基づいて並べ替えを処理します。 _GET['sort'] パラメータ。
<?php $sql = "SELECT * FROM MyTable"; if (isset($_GET['sort'])) { switch ($_GET['sort']) { case 'type': $sql .= " ORDER BY type"; break; case 'desc': $sql .= " ORDER BY description"; break; case 'recorded': $sql .= " ORDER BY recorded_date"; break; case 'added': $sql .= " ORDER BY added_date"; break; } } $result = mysql_query($sql); ?>
SQL クエリは、ユーザーの選択に基づいて適切な ORDER BY 句を含めるように動的に変更されます。
ユーザー入力は、SQL クエリに組み込まれる前にサニタイズする必要があることに注意することが重要です。これにより、悪意のあるユーザーがデータベースを侵害するのを防ぎます。サニタイズには、ユーザー入力の検証とフィルタリングが含まれ、悪意のある文字やコードが含まれていないことを確認します。
以上がMySQL から取得した HTML テーブルの行を並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。