Najprostszym sposobem, aby to zrobić, byłoby umieszczenie linku w nagłówku kolumny, wskazującego tę samą stronę. W ciągu zapytania umieść zmienną, aby wiedzieć, w co kliknęli, a następnie użyj ORDER BY w zapytaniu SQL, aby wykonać kolejność.
HTML wyglądałby tak:
<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>
A w kodzie php zrób coś takiego:
<?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";
}
$>
Zauważ, że nie powinieneś bezpośrednio pobierać wartości $_GET i dołączać jej do zapytania. Jak niektórzy użytkownicy mogli dostać się do MyPage.php?sort=; USUŃ Z MojaTabela;