Consulta a una base de datos MySQL con PHP

22/Ene/2013 PHP 2 Comentarios
programación php

Ya hemos visto lo sencillo que resulta conectarnos a una base de datos MySQL utilizando PHP. Ahora vamos a aprovechar dicha conexión para realizar una sencilla consulta a una base de datos.

Lo primero que hará nuestro programa será conectarse a MySQL. Para ello utilizamos el objeto mysqli del lenguaje PHP.

  1. @ $db = new mysqli(localhost, "root", "", "biblioteca");

Una vez realizada la conexión comprobaremos que esta se ha realizado correctamente. Para ello chequeamos el valor de connect_error para saber si se ha producido algún error:

  1. if ($db->connect_error)
  2. die('Error de Conexion ('.$db->connect_errno.')'.$db->connect_error);

Lo siguiente será preparar la consulta sobre la base de datos. En este caso vamos a tener una tabla que contenga libros con la siguiente estructura:

Libros
ISBN
Titulo
Autor
Editorial
Fecha Publicación

La consulta que ejecutaremos será la siguiente:

  1. $query = "SELECT * FROM libros";

Para ejecutar la sentencia utilizamos el método query(), el cual recibe la query que hemos definido como parámetro.

  1. $result = $db->query($query);

En la variable $result nos queda el resultado de elementos como respuesta a la query ejecutada. Es por ello que tendremos que ir recorriendolo para mostrar todo el contenido.

Para recorrer el resultado lo primero que tenemos que hacer es saber cuántos registros ha devuelto. Para ello utilizamos la propiedad num_rows.

  1. $numfilas = $result->num_rows;
  2. echo "El número de elementos es ".$numfilas;

Ahora establecemos un bucle for con el número de elementos que tenga el resultado, en el cual, por cada fila ejecutamos el método fetch_object para obtener un objeto que represente la tupla de la base de datos.

  1. for ($x=0;$x<$numfilas;$x++) {
  2. $fila = $result->fetch_object();
  3. echo "<tr>";
  4. echo "<td>".$fila->ISBN."</td>";
  5. echo "<td>".$fila->Titulo."</td>";
  6. echo "<td>".$fila->Fecha."</td>";
  7. echo "</tr>";
  8. }

De esta forma vemos que para acceder a los nombres de las columnas utilizamos el modificador -> con la estructura:

  1. $fila->nombre_campo;

Este atributo contiene el contenido del campo y la fila en la que estemos.

En el código hemos montado los resultado en una tabla. Por lo cual necesitamos algo de código HTML antes de nuestro código PHP.

  1. <table>
  2. <thead>
  3. <tr>
  4. <td>ISBN</td>
  5. <td>T&iacute;tulo</td>
  6. <td>Fecha</td></tr>
  7. </thead>
  8.  
  9. <?php
  10. for ($x=0;$x<$numfilas;$x++) {
  11. $fila = $result->fetch_object();
  12. echo "<tr>";
  13. echo "<td>".$fila->ISBN."</td>";
  14. echo "<td>".$fila->Titulo."</td>";
  15. echo "<td>".$fila->Fecha."</td>";
  16. echo "</tr>";
  17. }
  18. ?>
  19. </table>

Ya solo nos queda liberar el resultset y la conexión a la base de datos con los métodos free() y close() respectivamente.

  1. $result->free();
  2. $db->close();

Con este código podremos realizar consultas a nuestra base de datos MySQL en PHP.

Vídeos sobre PHP


2 comentarios en “Consulta a una base de datos MySQL con PHP”

Víctor Cuervo

leo

bien

Víctor Cuervo

karrikas

Me ha parecido interesante el articulo, pero en un proyecto largo que estrategia usarías para gestionar la base de datos?

Muchas gracias,

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*