sql >> Base de Datos >  >> RDS >> Mysql

Cómo ordenar filas de tablas HTML que se llaman desde MySQL

La forma más sencilla de hacer esto sería poner un enlace en los encabezados de las columnas, que apunte a la misma página. En la cadena de consulta, coloque una variable para que sepa en qué hicieron clic y luego use ORDER BY en su consulta SQL para realizar el pedido.

El HTML se vería así:

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

Y en el código php, haz algo como esto:

<?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";
}

$>

Tenga en cuenta que no debe tomar el valor $_GET directamente y agregarlo a su consulta. Como algún usuario pudo llegar a MyPage.php?sort=; ELIMINAR DE MiTabla;