Foros del Web » Programando para Internet » PHP »

problema con print_r

Estas en el tema de problema con print_r en el foro de PHP en Foros del Web. Hola amigos tengo un pequeño problema de definicion con la funcion de PHP print_r: ¿No se supone qu esa funcion printa todo el contenido de ...
  #1 (permalink)  
Antiguo 19/12/2011, 02:59
 
Fecha de Ingreso: mayo-2011
Ubicación: Valencia
Mensajes: 15
Antigüedad: 12 años, 11 meses
Puntos: 0
Pregunta problema con print_r

Hola amigos tengo un pequeño problema de definicion con la funcion de PHP print_r:

¿No se supone qu esa funcion printa todo el contenido de un array?

Os pego el codigo que estoy utilizando, resulta que hago una consulta en una base de datos y recojo varios resultados.El resultset lo transforma en un array mediante la funcion mysql_fetch_row, pero despues para decirle que me printe todo el contenido mediante print_r solo me muestra por pantalla el primer elemento del array ¿¿¿¿por que????


<?
$sentencia="SELECT dominio FROM dominios_usuarios WHERE id_usuario=$id";

$consulta=mysql_query($sentencia,$conn);
$dominios=mysql_fetch_array($consulta);
?>

<p><strong>LISTADO DE DOMINIOS</strong></p>

<? echo("El id en este caso es= a ".$id); //el contenido se muestra por pantalla, por lo que se pasa bien como variable de sesion desde el arhivo anterior

print_r($dominios); ?> // solo muestra el primero y debe mostrar 6
  #2 (permalink)  
Antiguo 19/12/2011, 05:13
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: problema con print_r

Es un problema tuyo, no de print_r.

Veamos: tu haces esto:
Código PHP:
$dominios=mysql_fetch_array($consulta); 
Y luego el print_r. Mysql_fetch_array devuelve... cada vez que lo ejecutas.. UN registro. Por eso solo te sale uno. Puedes ver la documentación aqui, y verás que dice:
Devuelve un array que corresponde a la fila recuperada

Un saludo!
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 19/12/2011, 06:52
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: problema con print_r

Tendrás que utilizar while.
  #4 (permalink)  
Antiguo 19/12/2011, 08:08
Avatar de CesarHC  
Fecha de Ingreso: junio-2011
Ubicación: localhost
Mensajes: 566
Antigüedad: 12 años, 10 meses
Puntos: 56
Respuesta: problema con print_r

No estas haciendo ningun bucle por eso te toma el primer valor, como te remiendan debes usar un while algo asi seria.

Código PHP:
Ver original
  1. <?php
  2. $sentencia="SELECT dominio FROM dominios_usuarios WHERE id_usuario=$id";
  3.  
  4. $consulta=mysql_query($sentencia,$conn);
  5. if ($row = mysql_fetch_array($consulta)){
  6.  
  7.    echo "
  8.  
  9.  
  10.   <table>
  11.    <tr>
  12.    <td>Listado de Dominios</td>
  13.  </tr> \n";
  14.    
  15.    do {
  16.       echo "
  17.       <tr>
  18.    <td>".$row["dominio"]."</td>
  19.  </tr>
  20.       ";
  21.    } while ($row = mysql_fetch_array($consulta));
  22.    echo "</table> \n";
  23. } else {
  24. echo "¡ No se han ingresado datos!";
  25. }
  26. ?>
__________________
Solo la práctica no te traicionara ¡¡¡¡¡¡

Seguir el camino tu debes PHP The Right Way.

Última edición por CesarHC; 19/12/2011 a las 09:03

Etiquetas: mysql, sql, variables, usuarios
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 23:08.