Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/02/2006, 08:03
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Vamos aclarando conceptos.

Tienes claro que PHP se ejecuta en el lado del servidor? .. Es decir .. que para cuando $nombre toma su valor y es entregado al "cliente" .. PHP ya dejó de actuar y perdió total control sobre lo que el "cliente" pueda hacer posteriormente?.

PHP ya no podrá "dar" dinámicamente un valor a ese campo de tu formulario ante un "evento" javascirpt que uses (onAlgo() ...). Eso está sucediendo en el lado del "cliente" y deberas tratarlo con Javascirpt.

Si dices que la "variable" PHP es la que quieres usar ahí .. PHP ya la generó así que el uso sería como la primera propuesta:

<INPUT type="hidden" name="nombre" value="<? echo $nombre;?>">

Si tu quieres usar alguna función que al "usarla" (por algún evento) quieres dar ese valor vía javascript .. puedes hacer algo tipo:

document.forms[formulario].elements[nombre].value = '<? echo $nombre ?>'

Si te fijas en el código fuente que genera la ejecución de ese script PHP (en tu navegador->ver código fuente) veras que $nombre .. se sustituye por su valor correspondiente .. quedando exactamente lo mismo que si sólo con un dato "fijo" usases para pruebas -sólo- con javascript.

Ahora .. por otro lado .. si tu generas una variable X en PHP y la "pasas" al cliente (en javascirpt .. por un formulario HTML con un campo hidden) para volver a pasarla a un script PHP de proceso .. No tiene sentido esa "ida y vuelta" de esos datos. Para eso es muchooooo más seguro usar una "sesión" (www.php.net/session). Es decir, tu variable la dejas en el servidor en una variable de sesión en la ejecución del primer script y la obtienes en los subsiguientes scripts de proceso done la requieras. NO es necesario (ni seguro) andar "paseando" esas variables en ese tipo de casos.

No sé si te habrá quedado claro .. pero es importante que sepas como funciona PHP y en general un lenguaje del "lado del servidor" bajo este ambiente de programación "cliente-servidor".

Un saludo,