Crear un order by...

Hola.
Haber tengo una dudilla, me gustaría hacer lo típico que tienen todas las tablas que es poder ordenar por cualquier campo. ¿Es decir en el titulo de la tabla al darle a cada campo pues se ordene por dicho campo me podríais exar una mano y decir como es? Se que es con una consulta sql pero el problema es que soy nuevo en esto y no se muy bien como llamar a esa consulta en la página si tenéis algún ejemplo os lo agradecería. Gracias.

1 respuesta

Respuesta
Debes mezclar mysql, php y html para hacerlo.
Un ejemplo muy sencillo:
1.- Al hacer click, en el titulo de la tabla ( ID o Nombre ) cambias una variable del formulario ( orderby ) por defecto a ID al valor que tu quieras al hacer click en el titulo. Después haces un submit del formulario.
2.- Al volver a la misma página, si esta definida la variable orderby la introduces en tu query mysql, y te ordenara los datos por ese valor. Si no esta definida, por el valor por defecto.
Espero que te sea de ayuda.
--------------------------
<?
if ( !isSet($orderby) ) {
$orderby = 'id';
}else{
$orderby = $_GET['orderby'];
}
$query = "SELECT * FROM tabla ORDER BY ".$orderby." DESC ";
$result = mysql_query($query,$link);
?>
<form name='principal' method='GET' action=''>
<input type='hidden' name='orderby' value='<? echo $orderby; ?>'>
<table><tr>
<td><a href='#' onClick='document.forms.principal.orderby.value="id";document.forms.principal.submit();'>
ID</a>
</td>
<td><a href='#' onClick='document.forms.principal.orderby.value="nombre";document.forms.principal.submit();'>
Nombre</a>
</td>
</tr>
<?
while($row = mysql_fetch_array($result) ) {
echo "<tr><td>".$row['id']."</td><td>".$row['nombre']."</td></tr>";
}
?>
</table>
------------------------------
** Este codigo tambien te funcionara en mozilla firefox, y opera. Intenet explorer tambien claro.
</form>
Pues no me sale intento meter eso en mi página pero no me sale. La tengo hecha con el dreamweaver no sabes si hay algo para este programa que lo facilite que ando un poco pez todavía en esto. Venga saludos.
<%=Texto%>
¿Cuál es el error que te da?
DreamWeaver nunca lo he tocado, pero me supongo que puedes introducir html, código php y javascript.
¿Estas albergando la página en un servidor con PHP y mysql?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas