Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Sobre Array Asociativo....

Estas en el tema de Sobre Array Asociativo.... en el foro de Frameworks JS en Foros del Web. Que tal amigos, Resulta que el resultado de un query (Select * from tabla), realizado en una funcion de Php, queda registrado en un array ...
  #1 (permalink)  
Antiguo 04/04/2007, 09:34
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 4 meses
Puntos: 8
Pregunta Sobre Array Asociativo....

Que tal amigos,

Resulta que el resultado de un query (Select * from tabla), realizado en una funcion de Php, queda registrado en un array asociativo de la siguiente forma:

Array ( [0] => Array ( [diario] => 10 [nom_diario] => ANULACION MOVIMIENTO ) [1] => Array ( [diario] => 1 [nom_diario] => INGRESOS ) )

Como puedo lograr manipular dicho resultado dentro de la funcion que recibe dicho resultado.

El codigo (simplificado) es el siguiente:

Código PHP:
<?
function realiza_consulta() {
   
$query "Select * from tabla";
   
$resultado lee_todo($query//$resultado es el array asociativo

   
print_r($resultado// --> Visualiza Array ( [0] => Array ( [diario] => 10 [nom_diario] => ANULACION MOVIMIENTO ) [1] => Array ( [diario] => 1 [nom_diario] => INGRESOS ) )

   
return "$resultado";
}
?>

<script>
function enviar_consulta() {
   agent.call('','realiza_consulta','consulta_callback');
}

function consulta_callback(obj) {
  alert(obj);   //Visualiza Array
}

</script>
La idea es enviar cada columna del array obtenido a su correpondiente campo dentro del form

Agradezco de antemano su colaboracion

Un cordial saludo
  #2 (permalink)  
Antiguo 04/04/2007, 12:55
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 9 meses
Puntos: 9
Re: Sobre Array Asociativo....

lo q tendrias q hacer es q tu funcion devuela el Js que introduce datos en los campos y en vez de alert un Eval de ese js.

EJ: tu funcion
echo "$('campo').value = $valor_de_consulta;"

tu JS

eval(obj)
  #3 (permalink)  
Antiguo 04/04/2007, 13:59
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 4 meses
Puntos: 8
Re: Sobre Array Asociativo....

Gracias Nefertiter por responder....

La verdad no te entendi lo de
Cita:
EJ: tu funcion
echo "$('campo').value = $valor_de_consulta;"
Supongo que $valor_de_consulta se refiere a el array asociativo que hago mension
Cita:
Array ( [0] => Array ( [diario] => 10 [nom_diario] => ANULACION MOVIMIENTO ) [1] => Array ( [diario] => 1 [nom_diario] => INGRESOS ) )
Pero no entiendo lo de
Cita:
echo "$('campo').value
Te agradeceria me aclararas un poco mas

Un Cordial Saludo
  #4 (permalink)  
Antiguo 06/04/2007, 11:26
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 9 meses
Puntos: 9
Re: Sobre Array Asociativo....

weno sere mas claro aun


vos con php tenes que devolver una cadena en Javascript

si estabas usando algun framework verias que $('campo') es equivalente a

document.getElementById('campo')

etnonces si keres llenar un campo con datos de php haces


return "document.getElementById('campo') = '".$row['campo']."' ;"

y desde JS haces eval(obj) [que obj seria justamente tu cadena, y ahi ya se llena solo el campo]
  #5 (permalink)  
Antiguo 09/04/2007, 16:39
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 4 meses
Puntos: 8
Re: Sobre Array Asociativo....

Gracias Nefertiter

Capte tu idea... construi una cadena con el resultado de la consulta de la siguiente manera ... solo que en la cosulta le puse alias a las columnas igual a los id del formulario

Código PHP:
foreach ($consulta as $key => $val) {
          
$cadena .= "document.getElementById('".$key."').value = '".$val."';";
}
return 
"$cadena"
... debido a que son varios los campos que debe visualizar en el formulario desde la consulta

Y en el JS solo puse el eval(cadena) y canciono perfecto

De nuevo, agradezco infinito a todos la colaboracion recibida en este foro

Un Cordial Saludo
  #6 (permalink)  
Antiguo 17/04/2007, 17:26
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 4 meses
Puntos: 8
Re: Sobre Array Asociativo....

Hola de nuevo a todos....

Otra vez con mi cuento de los arrays asociativos... se me presenta la siguiente situacion:

Si deseo construir una cadena de este tipo:

Código PHP:
$cadena "document.getElementById('ite'+$i).value = '".trim($item)."';"
con el proposito de que el eval() lo asuma como:

Código PHP:
document.getElementById('ite'+i).value 'xxxxx'
Al hacer un alert a la respuesta lo veo tal cual, pero al revisar la consola JavaScript del navegador (Firefox 1.5.0.11) me muestra el siguiente error:

Error: document.getElementById("ite10") has no properties

Lo del ite10 se refiere a que en el formulario tengo definido un inputText de la siguiente manera:

Código PHP:
echo "<input type=\"text\" id=\"ite$p\" name=\"prod$p\" value=\"\">"
donde $p corresponde a un numero de linea dentro del formulario

Que tengo que hacer para evitar dicho error?

De antemano mil gracias

Un Cordial Saludo
  #7 (permalink)  
Antiguo 18/04/2007, 07:37
 
Fecha de Ingreso: junio-2004
Ubicación: Ciudad de Panama
Mensajes: 551
Antigüedad: 20 años, 4 meses
Puntos: 8
Re: Sobre Array Asociativo....

Listo jovenes aun.... solucionado

Era solo construir la cadena en la funcion php de la siguiente manera:

Código PHP:
$cadena "document.getElementById('ite$i').value = '".trim($item)."';"
Es decir, poner ('ite$i') en lugar de ('ite'+$i)

Mil gracias de todas formas por su colaboracion

Un Cordial Saludo
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:16.