Búsqueda personalizada
 
 
 
 
Listado (selección de registros de una tabla)
   

Ahora veremos como recuperar los datos almacenados en la tabla alumnos de la base de datos phpfacil.


El programa que muestra los registros en una página es:

<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$conexion=mysql_connect("localhost","root","z80") 
  or  die("Problemas en la conexion");
mysql_select_db("phpfacil",$conexion) 
  or  die("Problemas en la selección de la base de datos");
$registros=mysql_query("select codigo,nombre, mail, codigocurso
                       from alumnos",$conexion) or
  die("Problemas en el select:".mysql_error());
while ($reg=mysql_fetch_array($registros))
{
  echo "Codigo:".$reg['codigo']."<br>";
  echo "Nombre:".$reg['nombre']."<br>";
  echo "Mail:".$reg['mail']."<br>";
  echo "Curso:";
  switch ($reg['codigocurso']) {
    case 1:echo "PHP";
           break;
    case 2:echo "ASP";
           break;
    case 3:echo "JSP";
           break;
  }
  echo "<br>";
  echo "<hr>";
}
mysql_close($conexion);
?>
</body>
</html>

La primer parte es similar a lo visto hasta ahora, es decir nos conectamos a la base de datos y seleccionamos la base de datos phpfacil.
El comando SQL que nos permite recuperar datos de tablas se llama SELECT. Indicamos los campos a rescatar de la tabla y luego de la palabra clave from indicamos el nombre de la tabla:

     $registros=mysql_query("select codigo,nombre, mail, codigocurso
                       from alumnos",$conexion) or
     die("Problemas en el select:".mysql_error());

En caso de haber codificado incorrectamente, el comando SQL select la función mysql_query retorna false, por lo que se ejecuta el comando siguiente al operador or, es decir la función die.
Si el comando SQL es correcto, en la variable $registros se almacena una referencia a los datos rescatados de la tabla alumnos. Ahora debemos ir mostrando registro a registro los datos extraidos:

   while ($reg=mysql_fetch_array($registros))

Para rescatar registro a registro los datos obtenidos por el select debemos llamar a la función mysql_fetch_array. Esta función retorna un vector asociativo con los datos del registro rescatado, o false en caso de no haber más registros. Es decir que si retorna un registro se almacena en el vector $reg y la condición del while se valida como verdadero y pasa a ejecutarse el bloque del while:

  {
  echo "Codigo:".$reg['codigo']."<br>";
  echo "Nombre:".$reg['nombre']."<br>";
  echo "Mail:".$reg['mail']."<br>";
  echo "Curso:";
  switch ($reg['codigocurso']) {
    case 1:echo "PHP";
           break;
    case 2:echo "ASP";
           break;
    case 3:echo "JSP";
           break;
  }
  echo "<br>";
  echo "<hr>";
 }

El bloque del while muestra el contenido del registro rescatado por la función mysql_fetch_array. Como vemos, para rescatar cada campo accedemos mediante el vector asociativo $reg indicando como subíndice un campo indicado en el select:$reg['codigo']

Cada vez que llamamos a la función mysql_fetch_array nos retorna el siguiente registro. Cuando debemos mostrar el curso mediante la instrucción switch, analizamos si tiene un 1,2 ó 3 y procedemos a mostrar el nombre del curso.
Para separar cada alumno en la página HTML llamamos disponemos la marca "<hr>"

 
 
       
       

¿Quienes somos?

Condiciones de uso

Publicidad

Privacidad de la informacion