Foros del Web » Programando para Internet » PHP »

Asociar arrays

Estas en el tema de Asociar arrays en el foro de PHP en Foros del Web. hola mi problema es el siguiente, tengo una base de datos donde en una tabla tengo instrumentos musicales en una columna y en otra coluimna ...
  #1 (permalink)  
Antiguo 30/03/2007, 09:29
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo Asociar arrays

hola mi problema es el siguiente,

tengo una base de datos donde en una tabla tengo instrumentos musicales en una columna y en otra coluimna tengo los id respectivos, cuando un usuario se registra y completa sus datos, selecciona de una lista los instrumentos que sabe ejecutar, en la tabla de usuarios se graba lso datos del usuario y los id separados por comas( , ) de cada instrumento que selecciono, ahora como puedo hacer para que a la hora de imprimir en una pagina los datos de los musicos, esos id se transformen en el respectivo instruemnto o sea que en ves de mostrarce los numeros separados por comas se muestren los nombres de los instrumentos, pienso que deberia hacerce un array de todos los instrumentos y ids y hacer alguna forma de que el sistema detecte que para tal id tiene que imprimir tal instruemnto y asi


espero que se halla entendido y me puedan ayudar
  #2 (permalink)  
Antiguo 30/03/2007, 11:12
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Asociar arrays

Hola korg1988 haber si esto te sirve:
Código PHP:
$ids explode(',',$resul['ids_instrum']);
for (
$i=0;$i<sizeof($ids);$i++){
    
$res mysql_query("SELECT id,instrumento FROM instrumentos WHERE id = " $ids[$i]);
    
$reg mysql_fetch_array($res);
    echo 
$reg['instrumento'];    

Saludos
__________________

  #3 (permalink)  
Antiguo 30/03/2007, 12:55
 
Fecha de Ingreso: febrero-2006
Mensajes: 134
Antigüedad: 18 años, 2 meses
Puntos: 10
Re: Asociar arrays

Te serviría esto quizás?
A ver si es lo que quieras

Código PHP:
define('id''id');

$r mysql_query("SELECT id,instrumento FROM instrumentos;");
$instr mysql_fetch_array($res);

// tenemos las variables $instrumentos = array(...) y $ids = array(...)
// y sus claves son numericas (0, 1, 2...)

$size sizeof($ids);
$out = array();

for (
$i=0;$i<$size;$i++){
    
$counter 0;
    while(
$ids[$i] != instr[$counter][id]) {$counter++; if($counter>$instrSize){ echo "<b><font size=30 color=RED>ERROR NO ESPERADO</font></b>";break;}}
$out[] = $counter;
}  

// en $out tienes los counters de cada instrumento. 
// A ver si te sirve o no te he entendido :S 
  #4 (permalink)  
Antiguo 31/03/2007, 01:24
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo Re: Asociar arrays

muchas gracias gerson y santhy lo he resuelto con el ejemplo de gerson ahora si no te es mucha molestia podrias explicarme como funciona el tema de los "for" porque he leido pero no llego a entender como armarlos, y veo que muchas veces es muy necesario utilizarlo, pero no entiendo como es su funcionamiento o sea porque esta cada cosa en el lugar que esta, porque se escribe esto y no lo otro entendes?

Muchisimas gracias y si no te molesta espero tu explicacion jejje Saludos ;)

Última edición por korg1988; 31/03/2007 a las 01:33
  #5 (permalink)  
Antiguo 01/04/2007, 18:01
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Asociar arrays

Hola korg1988, haber si me dejo entender:
Código PHP:
for ($i=0;$i<10;$i++){
  echo 
$i;
}

// ^ esto lo representare asi:

for (exp1exp2exp3){
  
sentencias

Como se sabe "for" es un bucle... ahora:

exp1: se evalua al iniciar el bucle: en el caso del ejemplo: la asignacion de la variable $i con el valor "0".

exp2: se evalua al comienzo de cada iteracion, esta parte es la q determina si el bucle continua o no; vale decir si es TRUE continua el bucle y las sentencias q estan anidadas se ejecutan(en el ejemplo imprime el valor de $i "echo $i;") de lo contrario FALSE termina el bucle. En el caso del ejemplo: "$i<10" mientras la variable $i sea menor q 10.

exp3: se evalua al final de cada iteracion; en el ejemplo, incrementa el valor de $i en cada iteracion.

Espero se me entienda.

Saludos.
__________________

  #6 (permalink)  
Antiguo 01/04/2007, 21:12
Avatar de korg1988  
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
De acuerdo Re: Asociar arrays

comprendi y ya lo aplique en un sistema de newsletter para recorrer todos los usuarios registrados y as ienviarle a uno por uno un mail

te agradesco muchisimo gerson y hasta otro encuentro jeje

chau a todos y espero que le sirva a otro este tema que estubo muy bueno
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 19:03.