In diesem Szenario haben wir eine HTML-Tabelle, die mit Daten gefüllt ist, die aus einer MySQL-Datenbank abgerufen wurden. Das Ziel besteht darin, die Tabellenzeilen durch Klicken auf die Spaltenüberschriften (Typ, Beschreibung, Aufnahmedatum, Hinzufügungsdatum) zu sortieren.
Um dies zu erreichen, können wir PHP und MySQL nutzen, um die Sortierlogik zu verwalten.
Die HTML-Tabelle ist wie folgt aufgebaut:
<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>
Im PHP-Code übernehmen wir die Sortierung basierend auf dem $ _GET['sort']-Parameter.
<?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); ?>
Die SQL-Abfragen werden dynamisch geändert, um basierend auf der Auswahl des Benutzers die entsprechende ORDER BY-Klausel einzuschließen.
Es ist wichtig zu beachten, dass Benutzereingaben bereinigt werden sollten, bevor sie in eine SQL-Abfrage integriert werden. Dadurch wird verhindert, dass böswillige Benutzer die Datenbank kompromittieren. Bei der Sanierung werden Benutzereingaben validiert und gefiltert, um sicherzustellen, dass sie keine schädlichen Zeichen oder Codes enthalten.
Das obige ist der detaillierte Inhalt vonWie sortiere ich aus MySQL abgerufene HTML-Tabellenzeilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!