Foros del Web » Programando para Internet » PHP »

Obtener datos de un campo mysql en un array

Estas en el tema de Obtener datos de un campo mysql en un array en el foro de PHP en Foros del Web. Hola que tal foreros, tengo una duda que no he podido resolver y ojala me puedan orientar al respecto. Quiero listar los correos que tengo ...
  #1 (permalink)  
Antiguo 21/05/2012, 17:39
Avatar de Oscar_Hidro  
Fecha de Ingreso: septiembre-2011
Ubicación: Aguascalientes, Mexico.
Mensajes: 200
Antigüedad: 12 años, 7 meses
Puntos: 25
Pregunta Obtener datos de un campo mysql en un array

Hola que tal foreros, tengo una duda que no he podido resolver y ojala me puedan orientar al respecto. Quiero listar los correos que tengo de una tabla en mi BD's.

La manera de obtener el array del campo lo obtengo a través de una función de la siguiente manera:

Código PHP:
Ver original
  1. function Query_array($sql)
  2.     {
  3.        
  4.         if(!$this->_isconnected)
  5.         {
  6.             $this->Connect();
  7.             //die('Conecta primero a la base de datos');
  8.         }
  9.        
  10.         $cons = mysql_query($sql, $this->_link);
  11.         if(!$cons)
  12.         {
  13.             $mensaje  = '<br>Query invalido: <b>' . mysql_error() .'</b><br>';
  14.             $mensaje .= 'Query usado: <b>'. $sql .'</b>';
  15.             echo "<font color=red>".$mensaje.'</font>';
  16.             return $mensaje;
  17.         }
  18.         $info = NULL;
  19.         return mysql_fetch_array($cons);       
  20.     }

Y la manera que quiero obtener los datos es a través de la consulta de esta forma:

Código PHP:
Ver original
  1. <?php
  2.         $sql="SELECT * FROM usuario_tax";
  3.         $c=$cons->Query_array($sql);
  4.         $num=$cons->QueryNum($sql);
  5.     $r==0;
  6.     while($r < $num){
  7.          echo $c['Mail'].';';
  8.     $r++;
  9.     }
  10. ?>

De esta forma me imprime a pantalla solamente el correo de la primera linea en la tabla de mi base de datos. Como hacer para que mi funcion pueda brincar al siguiente dato e mi tabla y asi poder imprimir los datos que se requiere???

  #2 (permalink)  
Antiguo 21/05/2012, 17:46
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Obtener datos de un campo mysql en un array

intenta de esta manera
Código PHP:
Ver original
  1. while($row = $c){
  2. echo $row['Mail'].'</br>';
  3. }
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #3 (permalink)  
Antiguo 21/05/2012, 17:52
Avatar de Oscar_Hidro  
Fecha de Ingreso: septiembre-2011
Ubicación: Aguascalientes, Mexico.
Mensajes: 200
Antigüedad: 12 años, 7 meses
Puntos: 25
Respuesta: Obtener datos de un campo mysql en un array

Gracias eits por tu aporte, pero desafortunadamente al emplear lo que me acabas de recomendar, me crea un bucle infinito puesto que el problema radica en que mi funcion no me detecta el total de registros, y siempre me imprime el mismo dato
  #4 (permalink)  
Antiguo 21/05/2012, 18:02
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: Obtener datos de un campo mysql en un array

revisa el array que te devuelve tu funcion usando el siguiente código
Código PHP:
Ver original
  1. echo '<pre>';
  2. var_dump($cons->Query_array($sql));
  3. echo '</pre>';
edito: por cierto si solo es una funcion porque lo llamas con $cons->Query_array, deberías de llamarla solo como Query_array($sql).
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 21/05/2012, 18:08
Avatar de Oscar_Hidro  
Fecha de Ingreso: septiembre-2011
Ubicación: Aguascalientes, Mexico.
Mensajes: 200
Antigüedad: 12 años, 7 meses
Puntos: 25
Respuesta: Obtener datos de un campo mysql en un array

Efectivamente me regresa nada mas el primer registro de mi tabla =(
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 22:58.