Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: sergiosacek en 04 de Agosto 2016, 03:04
-
Buenas tardes les envio una posible solucion del ejercicio CU00841B del curso básico de desarrollo web del lado del servidor con PHP.
<html>
<head><meta charset="utf-8"></head>
<body>
<?php
$link = mysqli_connect("localhost", "root", "");
mysqli_select_db($link, "ciudades");
$tildes = $link->query("SET NAMES 'utf8'"); //Para que se muestren las tildes
$result = mysqli_query($link, "SELECT * FROM ciudades");
mysqli_data_seek ($result, 0);
$extraido= mysqli_fetch_array($result);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
$extraido= mysqli_fetch_array($result, 1);
echo "- País: ".$extraido['pais']." ". "--- Ciudad: ".$extraido['ciudad']."<br>";
mysqli_free_result($result);
mysqli_close($link);
?>
</body>
</html>
Solo tengo una duda, al poner en el codigo $extraido= mysqli_fetch_array($result, 1);
yo deseaba poner 0,1,2,3...9, pero no me arrojaba el resultado deseado, entonces en el codigo solo puse 0,1,1,1,...1 y si me arrojo el resultado deseado.
Eso es correcto o me equivoque en algo.
Saludos
-
Hola, lo que ocurre con 0, 1, 1, ... es que mysqli_data_seek ($result, 0); te posiciona inicialmente en la fila 0.
$extraido= mysqli_fetch_array($result); te extrae los contenidos de esa fila
Luego $extraido= mysqli_fetch_array($result, 1); te extrae los datos en la siguiente fila a partir de la fila en la que estés situado, de ahí que al ir escribiendo esto vayas extrayendo filas una por una. Cada vez que invocas esto pasas a la siguiente fila.
Otra opción sería ir posicionándote en las filas una a una, en ese caso lo harías escribiendo mysqli_data_seek ($result, 1); luego mysqli_data_seek ($result, 2); y así sucesivamente como puedes ver en el ejemplo https://www.aprenderaprogramar.com/foros/index.php?topic=4209.0
Tanto la forma en la que lo has hecho tú como la del ejemplo están bien
Saludos