Foros del Web » Programando para Internet » PHP »

como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Estas en el tema de como puedo convertir una consulta tipo $row=mysql_fetch_array() en array en el foro de PHP en Foros del Web. Se que $result=mysql_fetch_array($query) me devuelve un array pero lo que quiero es que yo pueda recorrerlo como un array sin usar algo del tipo: While ...
  #1 (permalink)  
Antiguo 10/11/2008, 13:27
 
Fecha de Ingreso: julio-2008
Mensajes: 208
Antigüedad: 15 años, 9 meses
Puntos: 5
como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Se que $result=mysql_fetch_array($query) me devuelve un array pero lo que quiero es que yo pueda recorrerlo como un array sin usar algo del tipo:

While ($result = mysql_fetch_array($query){
echo $result['algo'];
}

lo que quiero hacer es :
$result=mysql_fetch_array($query) ;
$cant_reg = mysql_num_rows($query);

for (int $i=0; $i < cant_reg; $i++)
echo $result [$i] ['algo'];

Gracias por su ayuda...
Saludos
  #2 (permalink)  
Antiguo 10/11/2008, 13:32
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: Por favor como puedo convertir una consulta tipo $row=mysql_fetch_array()

¿Y qué tiene de malo el while?
Con el for lo podrías hacer, pero se accedería igual que con el while: $result['algo'];
Y debes añadir dentro del for el mysql_fetch_array, para que "pase" de elemento.

Si lo que quieres es guardar los datos en un array, igualmente puedes hacer el while e ir metiendo cada resultado en el array.

O puedes usar la extensión mejorada de MySQL (mysqli) o PDO.
  #3 (permalink)  
Antiguo 10/11/2008, 13:36
 
Fecha de Ingreso: enero-2008
Mensajes: 163
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Por favor como puedo convertir una consulta tipo $row=mysql_fetch_array()

puedes crear variables por ejemplo
Cita:
for($i=0 ; $i<$cant_reg; $i++){
$result=mysql_fetch_array($query);
$nombre[$i]=$result['nombre'];
echo $nombre[$i];
}
  #4 (permalink)  
Antiguo 10/11/2008, 13:39
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: Por favor como puedo convertir una consulta tipo $row=mysql_fetch_array()

Hola

no se bien que quieres pero podias probar esto

Código PHP:
$datos = array();

      While (
$result mysql_fetch_array($query){
         
$datos[] = $result['algo']; //almacenas en un array todos los resultados

      

Un saludo
  #5 (permalink)  
Antiguo 10/11/2008, 22:01
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Sería simplemente

Código php:
Ver original
  1. $datos = array();
  2.  
  3. while ($result = mysql_fetch_array($query){
  4.     $datos[] = $result;
  5. }
  #6 (permalink)  
Antiguo 11/11/2008, 06:08
 
Fecha de Ingreso: julio-2008
Mensajes: 208
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Muchas gracias a todos la de Okram fue la idea que mas me gusto y es la que use anda barbaro...
Puede recorrer la consulta asi
for ($i = 0; $i < cant_reg; $i++)
echo $resultado[$i]['nombre_campo']

ESTA EXCELENTE....
Lo queria asi porque estoy encapsulando mi programa es decir tengo una funcion que me hace la consulta y le devuelve a el usuario este array, un mensaje de error en caso de haberlo y un booleano que dice si hubo error, de esta manera queda mas "LIMPIO" el codigo que si yo le pasaba el "puntero" que me devuelve mysql_fetch_array que les puedo asegurar que de "ARRAY" no tiene nada...
mil gracias a todos....
  #7 (permalink)  
Antiguo 11/11/2008, 06:37
Avatar de Deschamps  
Fecha de Ingreso: octubre-2008
Mensajes: 257
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Cita:
Iniciado por sandinosaso Ver Mensaje
(..) de esta manera queda mas "LIMPIO" el codigo que si yo le pasaba el "puntero" que me devuelve mysql_fetch_array que les puedo asegurar que de "ARRAY" no tiene nada (..)
¿Por qué dices que no es un array? El manual afirma que el retorno de la función sí lo es, y mirando con var_dump se confirma. Exactamente igual con mysql_fetch_row (con un array exclusivamente de índices numéricos) o mysql_fetch_assoc (idem, pero asociativo).

Lo que es seguro que no es un array es el retorno de mysql_query, sino un recurso.

Un saludo.
  #8 (permalink)  
Antiguo 11/11/2008, 07:09
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 5 meses
Puntos: 17
Respuesta: como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Supongo que su problema será que el fecth_array le devuelve un array con los elementos duplicados (por índice y por nombre), por eso es más "óptimo" (lo entrecomillo porque no se notará mucho el rendimiento a no ser que sean muchos registros) usar directamente la función que te devuelve el array con ínidce o nombre.

De todos modos la solución que has adoptado te la di cinco minutos después de que postearas tu problema, así como otras sugerencias.
  #9 (permalink)  
Antiguo 11/11/2008, 09:59
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: como puedo convertir una consulta tipo $row=mysql_fetch_array() en array

Con eso no haces mas que ciclar dos veces el mismo array. Pero en fin.

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 09:23.