Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So sortieren Sie Zeilen einer HTML-Tabelle, die von MySQL aufgerufen werden

Der einfachste Weg, dies zu tun, wäre, einen Link in Ihre Spaltenüberschriften zu setzen, der auf dieselbe Seite verweist. Fügen Sie in der Abfragezeichenfolge eine Variable ein, damit Sie wissen, worauf sie geklickt haben, und verwenden Sie dann ORDER BY in Ihrer SQL-Abfrage, um die Sortierung durchzuführen.

Der HTML-Code würde folgendermaßen aussehen:

<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>

Und im PHP-Code machen Sie so etwas:

<?php

$sql = "SELECT * FROM MyTable";

if ($_GET['sort'] == 'type')
{
    $sql .= " ORDER BY type";
}
elseif ($_GET['sort'] == 'desc')
{
    $sql .= " ORDER BY Description";
}
elseif ($_GET['sort'] == 'recorded')
{
    $sql .= " ORDER BY DateRecorded";
}
elseif($_GET['sort'] == 'added')
{
    $sql .= " ORDER BY DateAdded";
}

$>

Beachten Sie, dass Sie den $_GET-Wert nicht direkt an Ihre Abfrage anhängen sollten. Da einige Benutzer zu MyPage.php?sort=; AUS MyTable LÖSCHEN;