Foros del Web » Programando para Internet » PHP »

matriz indexada

Estas en el tema de matriz indexada en el foro de PHP en Foros del Web. como puede meter los valores de un campo de mi db en una matriz indexada?...
  #1 (permalink)  
Antiguo 27/05/2011, 13:57
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años, 6 meses
Puntos: 10
matriz indexada

como puede meter los valores de un campo de mi db en una matriz indexada?
  #2 (permalink)  
Antiguo 27/05/2011, 14:07
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: matriz indexada

cuando usas mysql_fetch_array() o mysql_fetch_row() o similares los datos se guardan en una matriz indexada bajo los nombres de los campos o la ubicación (empezando desde 0) respectivamente.

Por ejemplo

si tienes esta tabla
Código C:
Ver original
  1. nombre            edad
  2. juan_inmortal     324

y usas

Código PHP:
Ver original
  1. $mfArray=mysql_fetch_array($query,$con);
  2. $mfRow=mysql_fetch_row($query,$con);

tendras en la variable $mfArray y $mfRow una matriz (bidimensional), la que puedes imprimir así:

Código PHP:
Ver original
  1. echo $mfArray['nombre']; //que imprimirá el nombre
  2. echo $mfRow[1]; //que imprimirá la edad

espero que se haya entendido XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #3 (permalink)  
Antiguo 27/05/2011, 14:15
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años, 6 meses
Puntos: 10
Respuesta: matriz indexada

buena explicacion stramin intento ponerlo a la practica y te digo si me fue bien saludos
  #4 (permalink)  
Antiguo 27/05/2011, 14:19
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años, 6 meses
Puntos: 10
Respuesta: matriz indexada

pero una cosa stramin y realmente lo que quiero es guardar todos los nombres de un campo en un array con su indice para cada elemento de ese campo

no se si me explico
  #5 (permalink)  
Antiguo 27/05/2011, 14:32
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: matriz indexada

en ese caso tendría que ser una matriz tridimensional algo así:

Código PHP:
Ver original
  1. $_tabla[campo][fila]

creo que no existe función PHP que guarde los resultados en un arreglo tridimensional así que tendrías que crearla tu algo así:

Código PHP:
Ver original
  1. for($w=0;$mfArray=mysql_fetch_array($query,$con);$w++){ //recorre todos los resultados
  2.   for_each($mfArray as $key => $value){ // obtienes todos los campos con sus valores
  3.     $_tabla[$key][$w]=$value; // guardas la variable
  4.   }
  5. }

la variable queda con esta estructura:

$_tabla[campo que quieres][registro que quieres]

de este modo puedes obtener la edad de juan_inmortal con:

Código PHP:
Ver original
  1. $_tabla_['edad'][0]
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #6 (permalink)  
Antiguo 27/05/2011, 14:45
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 13 años, 6 meses
Puntos: 10
Respuesta: matriz indexada

perdona stramin te estoy liando mira realmente quiero poder indentificar un registro del array por su numero como esto

Código PHP:
Ver original
  1. $nombres=array ("jose","sergio","laura","cristina","nadia","jenifer");
  2. echo $nombres[2];

dara como resultado laura

yo lo que quiero es guardar en un array mi campo con sus registros para poder selecionar luego a uno de ellos por su indice o a todos a la vez me ayudas?

stramin perdoname esque soy un poco tosco con la pogramacion pero me gusta mucho y quiero aprender

Última edición por pithon; 27/05/2011 a las 14:58

Etiquetas: matriz
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:27.