Foros del Web » Programando para Internet » PHP »

Mysq_fetch_array mediante Bucle For

Estas en el tema de Mysq_fetch_array mediante Bucle For en el foro de PHP en Foros del Web. Compañeros, como estan Bueno, solo es para exponer la duda que tengo sobre el recorrido por medio de un for a mysql_fetch_array resulta que estoy ...
  #1 (permalink)  
Antiguo 21/11/2006, 07:07
Avatar de charlyrosero  
Fecha de Ingreso: julio-2006
Mensajes: 161
Antigüedad: 18 años, 3 meses
Puntos: 5
Mysq_fetch_array mediante Bucle For

Compañeros, como estan

Bueno, solo es para exponer la duda que tengo sobre el recorrido por medio de un for a mysql_fetch_array

resulta que estoy siguiendo un videotutorial muy bueno, que ademas lo recomiendo mucho y esta en http://www.tutovideos.com
pues solo hago una consulta simple a mi base de datos Mysql, asi

Código PHP:
$db=mysql_pconnect("localhost","","");
mysql_select_db("libreria");
$consulta="Select * from libros where ".$tipo_busqueda." Like  '%".$criterio."%';";
$resultado=mysql_query($consulta);
$num_resultados=mysql_num_rows($resultado);
if (
$num_resultados)
{
   echo 
"<strong>Resultados Encontrados de ".$tipo_busqueda"  son ".$num_resultados."</strong><br><br>";
   for (
$i=0;$i<$num_resultados;$i++)
   {
    
$row=mysql_fetch_array($resultado);
    echo 
"<br>";
    echo 
"<strong>ISBN</strong>: ".$row["isbn"];
    echo 
"<br>";
    echo 
"<strong>Titulo</strong>: ".$row["titulo"];
    echo 
"<br>";
    echo 
"<strong>Autor</strong>: ".$row["autor"];
    echo 
"<br>";
    echo 
"<strong>Precio</strong>: ".$row["precio"];
    echo 
"<br>";
   }
        } 
alguno de ustedes me podria explicar cual es el funcionamiento logico del for para que $row,cada que se hara una iteraccion , sepa que tiene un registro diferente ?

me explico, para mi saber seria algo asi $row[$i]=mysql_fetch_array($resultado) , pero la forma que expongo en el codigo es mas sencilla y funciona pero no la entiendo, en el orden logico

1000 gracias

Última edición por charlyrosero; 21/11/2006 a las 07:14
  #2 (permalink)  
Antiguo 21/11/2006, 11:03
Avatar de charlyrosero  
Fecha de Ingreso: julio-2006
Mensajes: 161
Antigüedad: 18 años, 3 meses
Puntos: 5
Alguna Sugerencia ?
  #3 (permalink)  
Antiguo 21/11/2006, 11:50
Avatar de jmqc  
Fecha de Ingreso: noviembre-2004
Ubicación: Venezuela
Mensajes: 353
Antigüedad: 20 años
Puntos: 1
Que tal lo que pasa es que la variable $row[] es un arreglo que tiene contenido todo lo que trae la consulta y lo que tiene que hacer es mediante el for un ciclo para mostrar lo que tiene contenido. Espero que tee haya aclarado las dudas... Saludos
__________________
Ante el desconocimiento ni entendimiento de las cosas decimos que los demás estan locos.

José Quintero. Saludos.
:adios:
  #4 (permalink)  
Antiguo 21/11/2006, 13:00
 
Fecha de Ingreso: mayo-2005
Ubicación: Muy lejos de aquí
Mensajes: 367
Antigüedad: 19 años, 6 meses
Puntos: 0
Cuando haces mysql_query, almacenas en $resultado un array con todos los datos devueltos.

Imagina que te devuelve una tabla con todos los campos que has pedido en la consulta SQL, ok?

Bien, empiezas a leer la primera fila y muestras los datos con $row ['campo'], cuando haces $row[$i]=mysql_fetch_array($resultado) lo que hace es pasar a la siguiente fila de resultados.

Asi hasta que el for termine.

Tambien se puede hacer esto con un while sin tener que contar el numero de resultados devueltos.

Algo asi:

Código PHP:
while ($row=mysql_fetch_array($resultado)) {
   echo 
$row ['campo'];
   } 
Saludos
__________________
Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:11.