• Home »
  • PHP »
  • PHP (09) BBDD (03) Lectura y presentación de datos

PHP (09) BBDD (03) Lectura y presentación de datos

Como ya hemos visto, podemos conectar con una base de datos desde PHP, de hecho este es uno de sus puntos fuertes, pero debemos de generar consultas y poder mostrarlas por pantalla para que estos datos tengan valor para nosotros.
Siguiendo con el ejemplo anterior, donde ya hemos creado nuestra base de datos desde phpMyAdmin con una base de datos llamada agenda y una tabla llamada personas que tiene como campos; nombre, teléfono y email, vamos a extraer los datos de la misma y presentarlos en forma de tabla.

Para comenzar hay que realizar la consulta a través de una variable de la siguiente forma:
$query = ‘consulta’;

Una vez que hemos hecho esto se lanza la consulta a por medio de la función mysql_query() a la cual se le pude indicar un mensaje de error.
Todo esto podemos verlo en el siguiente código:

<?php
//conexiones al servidor y la base de datos
$conexion = mysql_connect("localhost","root","") or die ('No se ha podido conectar al servidor');
$db = mysql_select_db("agenda", $conexion) or die ('No se ha podido conectar a la base de datos');

//preparación y lanzamiento de la consulta a la base de datos
$query = 'SELECT * FROM personas';
$result = mysql_query($query) or die ('la consulta falló' . mysql_error());
?>

Pero si ejecutamos este código nuestra aplicación aun no hace absolutamente nada visual, ha recogido nuestros datos pero no los muestra para ello vamos a crear una tabla donde se muestren los datos, y vamos a ir volcando nuestras tuplas en un array por medio de la función mysql_fetch_array() que devuelve la tupla actual, pudiéndose recorrer estas por ciclos a través de un while, de la siguiente forma:

<?php
//conexiones al servidor y la base de datos
$conexion = mysql_connect("localhost","root","") or die ('No se ha podido conectar al servidor');
$db = mysql_select_db("agenda", $conexion) or die ('No se ha podido conectar a la base de datos');

//preparación y lanzamiento de la consulta a la base de datos
$query = 'SELECT * FROM personas';
$result = mysql_query($query) or die ('la consulta falló' . mysql_error());

//presentación de los datos en una tabla
echo '<table border=2>
            <tr>
                <td>Nombre</td><td>telefono</td><td>Email</td></tr>';
    while ($row=mysql_fetch_array($result)) { //Bucle para ver todos los registros
          $nombre=$row['nombre']; //datos del campo nombre
          $telefono=$row['telefono']; //datos del campo teléfono
          $email=$row['email']; //datos del campo email
          echo "<tr><td>$nombre</td> <td>$telefono</td> <td>$email</td></tr>"; //visualizar datos
          }

    echo '</table>';
?>

Lo cual nos da como resultado la siguiente tabla, actualmente solo con una tupla:

Nombre telefono Email
miguel 123456789 miguel.a.torralba@gmail.com

Cerrando la conexión

Después de realizar nuestras consultas es necesario cerrar nuestra conexión a la base de datos, para ello se utiliza la función mysql_close() que recibe como parámetro la conexión al servidor para que esta se cierre:

<?php
    echo '</table>';
mysql_close($conexion);//cierre de la conexion al servidor
?>

De esta forma nuestra conexión se cierra y no se permite el acceso a la BBDD a menos que se abra de nuevo.