Tutorial de PHP y MySQL - Mostrar los datos de una consulta

20 - Mostrar los datos de una consulta

[editar]
Tutorial creado por José Antonio Rodríguez. Extraido de: http://es.tldp.org/Manuales-LuCAS/manual_PHP/manual_PHP/
02 de Marzo de 2006
Ahora que ya sabemos conectar con el servidor de BD, veremos como mostrar los datos por pantalla.

Consulta de la BD

<html>

<body>

<?php

$link = mysql_connect("localhost", "nobody"odigo">$link = mysql_connect("localhost", "nobody");

mysql_select_db("mydb", $link);

$result = mysql_query("SELECT nombre, email FROM agenda", $link);

echo "<table border = '1'> \n";

echo "<tr> \n";

echo "<td><b>Nombre</b></td> \n";

echo "<td><b>E-Mail</b></td> \n";

echo "</tr> \n";

while ($row = mysql_fetch_row($result)){

echo "<tr> \n";

echo "<td>$row[0]</td> \n";

echo "<td>$row[1]</td> \n";

echo "</tr> \n";

}

echo "</table> \n";

?>

</body>

</html>

En este script hemos introducido dos novedades, la más obvia es la sentencia de control while(), que tiene un funcionamiento similar al de otros lenguajes, ejecuta una cosa mientras la condición sea verdadera. En esta ocasión while() evalúa la función mysql_fetch_row(), que devuelve un array con el contenido del registro actual (que se almacena en $row) y avanza una posición en la lista de registros devueltos en la consulta SQL.

La función mysql_fetch_row() tiene un pequeño problema, es que el array que devuelve sólo admite referencias numéricas a los campos obtenidos de la consulta. El primer campo referenciado es el , el segundo el 1 y así sucesivamente. En el siguiente script solucionaremos este pequeño inconveniente.

Consulta modificada de BD

<html>

<body>

<?php

$link = mysql_connect("localhost", "nobody&ost", "nobody");

mysql_select_db("mydb", $link);

$result = mysql_query("SELECT nombre, email FROM agenda", $link);

if ($row = mysql_fetch_array($result)){

echo "<table border = '1'> \n";

echo "<tr> \n";

echo "<td><b>Nombre</b></td> \n";

echo "<td><b>E-Mail</b></td> \n";

echo "</tr> \n";

do {

echo "<tr> \n";

echo "<td>".$row["nombre"]."</td> \n";

echo "<td>".$row["email"]."</td>\n";

echo "</tr> \n";

} while ($row = mysql_fetch_array($result));

echo "</table> style="margin-left: 50">echo "</table> \n";

} else {

echo "¡ La base de datos está vacia !";

}

?>

</body>

</html>

Esencialmente, este script hace lo mismo que el anterior. Almacenamos en $row el registro actual con la función mysql_fetch_array() que hace exactamente lo mismo que mysql_fetch_row(), con la excepción que podemos referenciar a los campos por su nombre ($row["email"]), en vez de por un número.

Con la sentencia if/else, asignamos a $row el primer registro de la consulta, y en caso de no haber ninguno (else) mostramos un mensaje ("No se ha encontrado..."). Mientras que con la sentencia do/while, nos aseguramos que se nos muestren todos los registros devueltos por la consulta en caso de haber más de uno.

Hay que destacar la utilización del punto (.), como operador para concatenar cadenas.
[editar]

17 opiniones

CASTILLO VILLA ESWIN te escribe:

Hola realmente este contenido de php y mysql es exelente este contenido esta muy entendible, de verdad sigue asi. Att: desde PERÚ.
gracias

muy bueno, me sacaste de un apuro
excelente

muy bueno
E

E
sdcv

trash
1 2 3 4 | siguiente >

Tutoriales relacionados con 'Tutorial de PHP y MySQL'

Su principal objetivo de diseño fue la velocidad, por ello se suprimieron algunas características de... Más »
En este artículo explicamos paso a paso como realizar una instalación a partir de los... Más »
Entiendase que AJAX no se refiere a usar el objeto XMLHttpRequest de manera indispensable porque... Más »
Las sesiones nos permiten almacenar y consultar información sobre un visitante sin necesidad de estar... Más »
Hace muuuuucho tiempo, cuando empezaba a aprender algo sobre php, me llamó la atención un... Más »

Autor y licencia de 'Tutorial de PHP y MySQL'


Tutorial de José Antonio Rodríguez. Extraido de: http://es.tldp.org/Manuales-LuCAS/manual_PHP/manual_PHP/ CopyLeft
Licencia GNU Free Documentation License: http://www.es.gnu.org/licencias/fdles.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.