Código fuente Ya.

Puede ejecutar la o las páginas para probar el concepto inmediatamente.

 

Concepto:Listado de registros ordenados por una columna de una tabla

El concepto trata sobre:html,php,mysql
Autor:

Retornar

Nombre del archivo:menu.html

Comentarios
El objetivo es mostrar en la página una lista de registros de una tabla. Luego disponiendo de hipervínculos para
por cada columna de la tabla.
Cuando se presiona dicho hipervínculo se debe mostrar la misma página ordenada por dicha columna de la tabla.
Nombre del archivo:creartabla.php

Comentarios
Nos conectamos al gestor de base de datos MySql y seleccionamos la base de datos codigofuenteya:
$conexion=mysql_connect("localhost","pepe","123456") or
  die("Problemas en la conexion");
mysql_select_db("codigofuenteya",$conexion) or
  die("Problemas en la selección de la base de datos");

Luego insertamos 15 registros en la tabla usuarios:
mysql_query("insert into usuarios(nombre,clave,edad) values ('juan','z123',14)",$conexion) or
  die("Problema:".mysql_error());
mysql_query("insert into usuarios(nombre,clave,edad) values ('ana','a123',17)",$conexion) or
  die("Problema:".mysql_error());
...
...
Nombre del archivo:ordenadocolumna.php

Comentarios
Lo primero que hacemos es ver si llega un parámetro en la llamada a la página ordenacolumna.php, en caso
negativo almacenamos en la variable $ordenado el valor "nombre", es decir se mostrará la información de la
tabla utilizando un : order by nombre.
En caso que si llegue un parámetro en la llamada a la página procedemos a inicializar la variable $ordenado
con el valor de dicho parámetro:
  $ordenado=$_REQUEST['ordenado'];

El codigo completo de inicialización de la variable $ordenado es:
if (isset($_REQUEST['ordenado']))
  $ordenado=$_REQUEST['ordenado'];
else
  $ordenado="nombre";

Nos conectamos con la base de datos:
$conexion=mysql_connect("localhost","pepe","123456") or
  die("Problemas en la conexion");
mysql_select_db("codigofuenteya",$conexion) or
  die("Problemas en la selección de la base de datos");

Nuestro select debemos incorporar la variable $ordenado para que los datos aparezcan según el campo
seleccionado:
$registros=mysql_query("select nombre,clave,edad from usuarios order by $ordenado",$conexion) or
  die("Problemas en el select:".mysql_error());

Una parte muy importante es que la tabla HTML en la fila de títulos dispongamos los hipervínculos con
los parámetros respectivos:
echo '<tr><td><a href="ordenadocolumna.php?ordenado=nombre">Nombre de usuario</a></td>
          <td><a href="ordenadocolumna.php?ordenado=clave">Clave</a></td>
		  <td><a href="ordenadocolumna.php?ordenado=edad">Edad</a></td></tr>';

Dentro del while imprimimos cada registro de la tabla usuarios
while ($reg=mysql_fetch_array($registros))
{
  echo '<tr>';	
  echo '<td>'.$reg['nombre'].'</td>';
  echo '<td>'.$reg['clave'].'</td>';
  echo '<td>'.$reg['edad'].'</td>';
  echo '</tr>';
}

Retornar



Código Fuente Ya - 2015