Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] guardar resultado de consulta en un arreglo en php

Estas en el tema de guardar resultado de consulta en un arreglo en php en el foro de PHP en Foros del Web. hola tengo el siguiente problema estoy haciendo una consulta con sql quiero guardar el resultado en una variable para luego llamarla en la posicion que ...
  #1 (permalink)  
Antiguo 17/05/2013, 10:59
 
Fecha de Ingreso: febrero-2010
Ubicación: valencia
Mensajes: 146
Antigüedad: 14 años, 9 meses
Puntos: 3
guardar resultado de consulta en un arreglo en php

hola tengo el siguiente problema estoy haciendo una consulta con sql
quiero guardar el resultado en una variable para luego llamarla en la posicion que yo quiero por ejemplo $nombre[1].

no se si esto este bien


Código PHP:

$sql
="SELECT * FROM tblproducto";

$result mysql_query($sql);
$row mysql_fetch_array($result);
$num_resul=mysql_num_rows($result);

$i=1;


while(
$i <= $num_resul){ 

$strNombre [$i] = $row['strNombre'];


$i++;


y luego mostrar el nombre que esta dentro de esa variable en la posicion que yo quiero


Código PHP:

 <?php  echo $strNombre[2]; ?>
  #2 (permalink)  
Antiguo 17/05/2013, 11:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: guardar resultado de consulta en un arreglo en php

¿Y no te funciona, te sale algún error o tenemos que adivinar lo que te sucede?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 17/05/2013, 11:06
 
Fecha de Ingreso: febrero-2010
Ubicación: valencia
Mensajes: 146
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: guardar resultado de consulta en un arreglo en php

lo q sucede es lo siguiente por ejemplo en la base de datos imagina que tengo varios productos con estos nombres

carro 1, carro 2 , carro 3, carro 4,

y al imprimir el arreglo

<?php echo $strNombre[2]; ?>

en cualquier posicion me muestra siempre carro 1
  #4 (permalink)  
Antiguo 17/05/2013, 11:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: guardar resultado de consulta en un arreglo en php

Entonces depura tu array con var_dump() para que veas lo que se genera, igual deberías depurar lo que vas agregando dentro del while(), de otra forma es imposible adivinar por que no resulta lo que haces.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 17/05/2013, 14:17
 
Fecha de Ingreso: febrero-2010
Ubicación: valencia
Mensajes: 146
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: guardar resultado de consulta en un arreglo en php

si pero no se si el codigo que hice esta bien hecho! no se si asi se almacena en un array en php! quiero es que alguien me guie como se hace! segun esto que quiero hacer se llama arreglo asociativo!
  #6 (permalink)  
Antiguo 17/05/2013, 14:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: guardar resultado de consulta en un arreglo en php

Sólo existen dos formas de averiguarlo: leyendo el manual o ejecutando tu código.

No necesitas abrir un tema para que revisemos tu código, no necesitas pedir permiso, si no experimentas jamás vas a saber lo que sucede.

El único problema evidente es que en cada vuelta del while() siempre usas el mismo resultado que extrajiste anteriormente, por eso se repite en todos lo mismo.

Dentro del while() debes hacer la extracción con mysql_fetch_array(), no antes y no fuera.

¿Se entiende?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 17/05/2013, 15:56
 
Fecha de Ingreso: febrero-2010
Ubicación: valencia
Mensajes: 146
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: guardar resultado de consulta en un arreglo en php

ok se hace asi necesitaba una segunda consulta porq se quedaba en la primera linea siempre por eso imprimia el mismo resultado


$sql="SELECT * FROM tblproducto";

$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$num_resul=mysql_num_rows($result);


$i=1;


while($i <= $num_resul){

$sql1="SELECT strNombre FROM tblproducto WHERE idProducto = ".$i."";

$result1 = mysql_query($sql1);
$row1 = mysql_fetch_array($result1);

$strNombre [$i]= $row1['strNombre'];


$i++;
}




----------------------------------------------------

ahora si escribo

<?php echo $strNombre [5]; ?>


me mostrara el nombre en esa posicion

Etiquetas: arreglo, mysql, resultado, select, sql
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 18:00.