Foros del Web » Programando para Internet » PHP »

array asociativo

Estas en el tema de array asociativo en el foro de PHP en Foros del Web. Hola comunidad Bueno estoy haciendo un listado de datos traidos desde mySQL con PHP y tengo un pequeño problema, el ciclo que uso para sacar ...
  #1 (permalink)  
Antiguo 23/01/2007, 07:53
 
Fecha de Ingreso: junio-2006
Mensajes: 89
Antigüedad: 17 años, 10 meses
Puntos: 0
array asociativo

Hola comunidad

Bueno estoy haciendo un listado de datos traidos desde mySQL con PHP y tengo un pequeño problema,
el ciclo que uso para sacar los datos es el sig.

Código:
while($row=mysql_fetch_array($result)){
  echo $row["nombre"];
}
Esto simplemente me da la columna nombre de la query en cuestion, pero si mysql_fetch_array devuelve un array asociativo deberia permitirme hacer esto..

Código:
while($row=mysql_fetch_array($result)){
  while($e=each($row)){
      echo $e["value"];
  }
}
El ultimo codigo funciona, pero me repite 2 veces las columnas, ???
porque hace eso ?, a alguien le ah pasado lo mismo ?

saludos
gracias de antemano..
  #2 (permalink)  
Antiguo 23/01/2007, 07:56
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Re: array asociativo

a ver... pero que queres hacer?
  #3 (permalink)  
Antiguo 23/01/2007, 08:26
 
Fecha de Ingreso: junio-2006
Mensajes: 89
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: array asociativo

Bueno aya va la idea completa de lo que realmente quiero

El tema es que quiero tener una clase Paginado la cual pueda reutilizar cada vez que tenga que hacer un paginado, por ende esta clase debe ser capaz de mostrarme las columnas que me proporciona el query que le paso, sin tener que predefinir los nombres de los campos. (ej: $row["nombre"](Esto es lo que quiero evitar)).

saludos
gracias por responder.
  #4 (permalink)  
Antiguo 23/01/2007, 08:59
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Re: array asociativo

pero sabes que podes hacer esto:

while($row=mysql_fetch_array($result)){
echo $row[0];
}
  #5 (permalink)  
Antiguo 23/01/2007, 11:07
 
Fecha de Ingreso: junio-2006
Mensajes: 89
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: array asociativo

joder....

esa no la habia probado ni visto, realmente estoy aprendiendo por un .pdf que encontre en la red y no es de esa forma que lo ponen.

gracias por la respuesta.
  #6 (permalink)  
Antiguo 23/01/2007, 17:01
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Re: array asociativo

de nada, justamente el hecho de poder el indice es el unico sentido q tiene el Fetch_array sino conviene fetch_assoc
aqui te lo dejo mas claro x las dudas

si tu consulta es

$query = mysql_query("SELECT titulo, campo FROM tabla");
$row = mysql_fetch_array($query);

si haces print_r($row)

te mostrara

array ()
[0] => valor_titulo
[titulo] => valor_titulo
[1] => valor_campò
[campo] => valor_campo
  #7 (permalink)  
Antiguo 16/02/2007, 11:13
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: array asociativo

me cuelo en este post porque estoy tratando de entender como funciona el mysql_fech_array, basandome en la siguiente funcion de una clase:

function obtendatos() {
$this->resultado=mysql_fetch_array($this->consulta);
return $this->resultado;
}

armé este codigo para tratar de entenderlo.

Código PHP:
<?php
class conn {
    
    public function 
obtendatos(){

//con esto intento simular el array que me genera el fetch_array, aunque creo que no es asi porque no me muestra nada
    
    
$this->arr[0][apellido]="rodrigues";
    
$this->arr[1][apellido]="gomez";
    
    return 
$this->arr;
    }
    
}

$objConn=new conn();
 while(
$row=$objConn->obtendatos()) {
     echo 
$row[apellido];
 }
saludos y gracias desde ya

Última edición por moron; 16/02/2007 a las 11:59
  #8 (permalink)  
Antiguo 16/02/2007, 11:13
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: array asociativo

me cuelo en este post porque estoy tratando de entender como funciona el mysql_fech_array, basandome en la siguiente funcion de una clase:

function obtendatos() {
$this->resultado=mysql_fetch_array($this->consulta);
return $this->resultado;
}

armé este codigo para tratar de entenderlo.

Código PHP:
<?php
class conn {
    
    public function 
obtendatos(){

//con esto intento simular el array que me genera el fetch_array, aunque creo que no es asi porque no me muestra nada
    
    
$this->arr[0][apellido]="rodrigues";
    
$this->arr[1][apellido]="gomez";
    
    return 
$this->arr;
    }
    
}

$objConn=new conn();
 while(
$row=$objConn->obtendatos()) {
     echo 
$row[apellido];
 }
saludos y gracias desde ya.
  #9 (permalink)  
Antiguo 16/02/2007, 17:06
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Re: array asociativo

mysql_fetch_array devueve un array mas similiar a esto

Código PHP:
public function obtendatos(){ 

    
$this->arr[0][0]="rodrigues"
    
$this->arr[0]['apellido']="rodrigues"

    
$this->arr[1][0]="gomez"
    
$this->arr[1]['apellido']="gomez"

    return 
$this->arr
    } 
de todas maneras cada vez que se invoca devuelve de au n Id no todos a la vez..
  #10 (permalink)  
Antiguo 16/02/2007, 22:18
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 18 años, 9 meses
Puntos: 1
Re: array asociativo

la duplicacion se debe a que el retorna el indice como numero de posicion y ademas como nombre del campo de la tabla
  #11 (permalink)  
Antiguo 19/02/2007, 06:26
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 972
Antigüedad: 19 años, 11 meses
Puntos: 2
Re: array asociativo

Muchas gracias a ambos.
Cita:
Iniciado por Nefertiter Ver Mensaje
de todas maneras cada vez que se invoca devuelve de au n Id no todos a la vez..
eso quiere decir que dentro de la función hace una especie de moveNext, o como es que lo maneja?

El tema es que estoy tratando de modificar una clase para trabajar con mvc, si esa funcion es propia del mysql y los demas gestores no devuelven los datos de la misma manera, ante un cambio de gestor tendria que modificar varias capas.

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 18:37.