Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: jimmorrison en 27 de Mayo 2015, 01:24

Título: Ejemplo SELECT y mysqli_fetch_array while consulta a base datos con PHP CU00841B
Publicado por: jimmorrison en 27 de Mayo 2015, 01:24
Ejercicio CU00841B

Citar
Utilizando la tabla <<ciudades>> que se muestra en el enunciado del ejercicio, crea un archivo php donde se realice una consulta a la base de datos para extraer todos los datos de la tabla y a continuación muestra por pantalla los valores de país y ciudad de cada fila.

Ejemplo de resultados a obtener:

Los resultados de la consulta a la base de datos son los siguientes:
País: México --- Ciudad: México D.F.
País: España --- Ciudad: Barcelona
País: Argentina --- Ciudad: Buenos Aires

País: Cuba --- Ciudad: La Habana

Código: [Seleccionar]
<?php
$db
mysqli_connect('sql204.byethost7.com','b7_16106679','acsdc120789','b7_16106679_mibasededatos') or
die(
'no se establecio conexion');
echo 
'conexion con exito''<br><br>';
mysqli_select_db($db,b7_16106679_mibasededatos);
$tabla mysqli_query($db'SELECT * FROM ciudades');
while(
$obtener_filas=mysqli_fetch_array($tabla)){
echo 'id '$id$obtener_filas['id'],'<br>';
echo 'pais :'$pais$obtener_filas['pais'], ' --- ';
echo 'ciudad :'$ciudad$obtener_filas['ciudad'],'<br>';
echo 'habitantes :'$habitantes $obtener_filas['habitantes'],'<br>';
echo 'superficie :'$superficie $obtener_filas['superficie'], '<br>';
echo 'tiene metro :'$tienemetro $obtener_filas['tienemetro'], '<br>';
echo '<br>';
}
mysqli_free_result($tabla);
mysqli_close($db);
?>


una duda maestros
me pueden explicar mejor el bucle los echos no hay problema solo la funcion del bucle



while($obtener_filas=mysqli_fetch_array($tabla)){
   echo 'id ', $id= $obtener_filas['id'],'<br>';
   echo 'pais :', $pais= $obtener_filas['pais'], ' --- ';
   echo 'ciudad :', $ciudad= $obtener_filas['ciudad'],'<br>';
   echo 'habitantes :', $habitantes = $obtener_filas['habitantes'],'<br>';
   echo 'superficie :', $superficie = $obtener_filas['superficie'], '<br>';
   echo 'tiene metro :', $tienemetro = $obtener_filas['tienemetro'], '<br>';
   echo '<br>';

Jose Maldonado que buena idea crear el formulario y añadir la conexion con php lo voy hacer
Título: Re:Ejemplo SELECT y mysqli_fetch_array while consulta a base datos con PHP CU00841B
Publicado por: Ogramar en 27 de Mayo 2015, 08:50
Hola, el uso del while se explica en CU00842B, http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=613:ejemplo-consulta-php-mysql-select-bucle-while-mysqlifetcharray-recorrer-resultados-query-cu00842b&catid=70:tutorial-basico-programador-web-php-desde-cero&Itemid=193 por lo que en CU00841B no era necesario usar un while

Para entender esto es necesario haber seguido el curso desde el principio y haber comprendido el concepto de array o arreglo con índices numéricos y array o arreglo asociativo con índices de texto, consultas a bases de datos, etc.

En el curso se explica: La sentencia $extraido= mysqli_fetch_array($result); indica que los valores existentes en la fila se introduzcan en un array cuyos índices en principio pueden ser tanto asociativos (el nombre de la columna) como numéricos (empezando por cero). Por ejemplo si la primera columna en la tabla de la base de datos es <<ciudad>> podemos usar $extraido['ciudad'] para acceder al valor existente en la fila con la que estemos trabajando para la columna ciudad. Igualmente podríamos usar $extraido[0] para referirnos a la primera columna, $extraido[1] para referirnos a la segunda columna, $extraido[2] para referirnos a la tercera columna y así sucesivamente.

while($obtener_filas=mysqli_fetch_array($tabla)){


Significa lo siguiente:

Mientras que existan resultados de la consulta definida por $tabla, extrae los resultados de una fila en forma de array y almacénalos en la variable $obtener_filas.

Dentro del bucle aprovechamos que se han extraido los datos de una fila para mostrarlos basándonos en que los datos se encuentran en forma de array asociativo en la variable $obtener_filas.

Salu2