Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/08/2009, 13:42
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años, 1 mes
Puntos: 0
Ordenacion por columnas

Hola a todos,

tengo una serie de pantallas con busquedas en la base de datos que me muestran el resultado de estas busqueda en formato tabla. En algunas columnas tengo puestos unos iconos para que me ordene por estas columnas, yo estoy haciendo esta ordenación mediante la petición de una nueva busqueda con sql a la base de datos especificando el campo por el tiene que ordenar.

El codigo en la cabecera de la tabla es:

print "<th rowspan='2' class='ord1'>NOMBRE</th>";
print "<th class='ord2'><div align='right'><A href='?order=Denominacion&tipo=asc'/><img src=\"images/up.gif\" alt='[A..Z]' /></div></th>";

El codigo de busqueda es:

if($_GET["order"] != "")
{
$paging->agregarConsulta("SELECT * FROM Tabla WHERE CodigoPostal='".$codpos."' ORDER BY ".$_GET['order']." ".$_GET['tipo']."");
}
else
{
$paging->agregarConsulta("SELECT * FROM Tabla WHERE CodigoPostal=\"".$_GET['codpostal']."\"");
$boton_buscar=1;
}

La pregunta es: ¿Hay algún metodo mejor para hacer esto?
Porque así a simple vista parece un buen metodo paro tiene 2 inconveniente:
1º Vuelve a recargar toda la pagina cada vez que se quiere ordenar por una columna.
2º El codigo se complica y mucho para una ventana de busqueda complicada(busqueda por muchas opciones o campos) y con posibilidad de ordenación por varias columnas.

Un saludo.