Foros del Web » Programando para Internet » PHP »

Arrays asociativos

Estas en el tema de Arrays asociativos en el foro de PHP en Foros del Web. A ver mi "problema" es que tengo un array creado a partir de mysql_fetch_assoc en el cual hay 4 campos, para ejemplificar les ponemos campo1, ...
  #1 (permalink)  
Antiguo 02/04/2003, 13:25
 
Fecha de Ingreso: febrero-2003
Mensajes: 15
Antigüedad: 14 años, 10 meses
Puntos: 0
Arrays asociativos

A ver mi "problema" es que tengo un array creado a partir de mysql_fetch_assoc en el cual hay 4 campos, para ejemplificar les ponemos campo1, campo2.... Ahora como hago yo para saber cual es el contenido de un campo respecto a otro, a ver que esto no lo entiendo ni yo:

Yo quiero escribir en pantalla todos los contenidos del campo4, cunado el campo3 vale 22 (por ejemplo, se entiende).

Si alguien me puede ayudar le estare agradecido.
  #2 (permalink)  
Antiguo 02/04/2003, 13:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues tienes varios métodos ...

1) Accediendo a su indice por el nombre del campo q tenga en la tabla SQL ...

Código PHP:
$consulta=mysql_query($sql);
$registro=mysql_fetch_assoc($consulta);
   echo 
$registro['campo1'];
   echo 
$registro['campo2'];
   echo 
$registro['campoN']; 
2) .. usando un bucle para leer los posibles registros que te entrege la consulta que has hecho y que lo "desglosas" en un array asociativo con tu xxxx_fetch_assoc

Código PHP:
$consulta=mysql_query($sql);
While (
$registro=mysql_fetch_assoc($consulta)){
   echo 
$registro['campo1'];
   echo 
$registro['campo2'];
   echo 
$registro['campoN'];

A cada pasada del bucle .. se mueve el puntero interno de la consulta. Cualquier xxx_fetch_xxx() función devuelve FALSE cuando el llega al final del ultimo registro que pueda arrojar la consulta ..

Si usas el bucle while() de este caso .. si una consulta te pude arrojar varios registros los leeras todos ...

3) Si sabes que obtienes un solo registro y quieres algunos (tal vez no todos ) de los campos que te arroja la consulta .. puedes usar mysql_result()

Código PHP:
$consulta=mysql_query($sql);
$campo1=mysql_result($consulta,0,'campo1');
$campo2=mysql_result($consulta,0,'campo2');
$campoN=mysql_result($consulta,0,'campoN'); 
Tambien podrias acceder al registro/campo que indiques directamente en caso de que sepas que la consulta te arroja varios registros ..

Código PHP:
$campo1=mysql_result($consulta,nºregistro,'nombre_campo'); 
Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 02/04/2003, 14:25
 
Fecha de Ingreso: febrero-2003
Mensajes: 15
Antigüedad: 14 años, 10 meses
Puntos: 0
Pues vaya una exposicion que has hecho aqui en un momento... :P.
Muchas gracias, ahora me toca estudiarme las posibilidades, a ver cual me gusta mas.
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 13:51.