Foros del Web » Programando para Internet » PHP »

Php + Javacsript

Estas en el tema de Php + Javacsript en el foro de PHP en Foros del Web. hola a todos, como puedo trabajar php dentro de javacsript (si se puede), yo estaba haciendo una locura como esta: <script language=javascript> function cargar() { ...
  #1 (permalink)  
Antiguo 14/06/2006, 15:07
 
Fecha de Ingreso: enero-2003
Ubicación: Caracas
Mensajes: 439
Antigüedad: 14 años, 10 meses
Puntos: 0
Pregunta Php + Javacsript

hola a todos, como puedo trabajar php dentro de javacsript (si se puede), yo estaba haciendo una locura como esta:

<script language=javascript>
function cargar()
{
document.frm.PaisP.value<?= $valor;?>
}
</script>

como puedo pasarle una variable de php el valor que contiene un objeto de un formulario por javascript.

gracias, saludos.
  #2 (permalink)  
Antiguo 14/06/2006, 15:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
No se trata de pasarle un valor de una variable PHP a javascript sino que vas a "generar" con PHP esa porción de código Javascript de tu página .. Tal vez te parezca lo mismo pero el concepto es diferente.

En ese caso .. lo harías como mencionas.

Código PHP:
<script language=javascript>
function cargar()
{
document.frm.PaisP.value<?= $valor;?>
}
</script>
Cita:
como puedo pasarle una variable de php el valor que contiene un objeto de un formulario por javascript.
Como PHP se ejecuta del lado del "servidor" .. para cuando PHP ya generó la página que el cliente ve y ejecuta (ejecuta su javascript .. su HTMTL contenido en el) .. PHP ya no tiene control sobre la misma .. para hacer llegar un valor generado en javascript a tu script PHP tendrás que -enviarlo- a tu script, ya sea por un redireccionamiento que hagas .. un link, una variable oculta en un formulario .. etc. En ese caso tendrás que componer dicho link con javascript y será en la "recarga" de página o donde apuntes tu redirección (al script.php) el que reciba tu dato generado con javascript.

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 14/06/2006, 18:05
 
Fecha de Ingreso: junio-2006
Ubicación: Jáltipan Veracruz, México
Mensajes: 150
Antigüedad: 11 años, 6 meses
Puntos: 1
si se puede mezclar JS con PHP, es un hecho que se puede.. pero en tu caso veo que utilizas funciones, entoces yo te recomiendo, digamos que para seguir la programación estructurada, que a tu función le pases los valores como argumentos, ya que puedes reciclar la funcióin para otro momento que la requieras:

<script language=javascript>
function cargar(valor)
{
document.frm.PaisP.value=valor;
}
</script>

.
.
.
.
<?
echo"
<script>
cargar('$valor');
</script>
";?>
  #4 (permalink)  
Antiguo 14/06/2006, 18:14
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.544
Antigüedad: 15 años, 8 meses
Puntos: 1262
Hola:

En el value falta la asignación:
document.frm.PaisP.value =

Pero veo innecesario el uso de javascript (bueno, en esta ocasión...)
<form name="frn" ...>
<input type="text" name="PaisP" value="<? php echo $valor; ?>" />

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 15/06/2006, 07:45
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por norpool1
si se puede mezclar JS con PHP, es un hecho que se puede.. pero en tu caso veo que utilizas funciones, entoces yo te recomiendo, digamos que para seguir la programación estructurada, que a tu función le pases los valores como argumentos, ya que puedes reciclar la funcióin para otro momento que la requieras:

<script language=javascript>
function cargar(valor)
{
document.frm.PaisP.value=valor;
}
</script>

.
.
.
.
<?
echo"
<script>
cargar('$valor');
</script>
";?>
Parece que no quedó claro lo que intenté exponer .. (esto es un problema más de "fondo").

PHP "dá" salida a tu HTML/Javacript que generas o entregas con PHP desde tu script PHP. Si, si .. estás "mezclando" en un script .php instrucciones PHP con javascript y HTML si quieres entre otras cosas .. Pero realmente es la lógica PHP la que al final "genera" esa página que será entregada al cliente y este interpretará su parte como corresponda.

Si te fijas .. revisa tu código "fuente" generado (en tu navegador-> ver código fuente) .. eso es lo que PHP "pre-procesó" y luego le toca el turno a tu navegador ejecutarlo (lo que corresponda: javascript y otros ..)

Creo que este concepto hay que tenerlo muy claro .. por qué con esto claro se vé enseguida que si necesitas desde PHP "pre-establecer" cierto valor como inico de una rutina javascript .. "la generas con PHP" (como el primer ejemplo que expuse en mi primera respuesta a este mensaje). Si una vez ya "ejecutandose" tu página en el "cliente" necesitas pasar algún dato generado con javascript ... tendrás que "enviarselo" al script PHP que corresponda .. ya sea en un campo de un formulario .. link que generas para redireccionar ..etc.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 15/06/2006, 07:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por caricatos
Hola:

En el value falta la asignación:
document.frm.PaisP.value =

Pero veo innecesario el uso de javascript (bueno, en esta ocasión...)
<form name="frn" ...>
<input type="text" name="PaisP" value="<? php echo $valor; ?>" />

Saludos
Yo ya me perdí .. realmente no sé que es lo que realmente quiere hacer nuesto amigo.

Sería recomendable que expusiera el código que usa en su contexto (todo) y que es lo que realmente pretende hacer .. (me parece que un juego de "select's" dependientes está haciendo? .. ).

Por qué si se trata de "pasar ese dato de un "input" cualquiera o "select" a una variable PHP .. se trataría en ese caso de usar un formulario o link (que añadir sus variables con javascript para generar el URL) y enviarlo simplemente ...

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 15/06/2006, 08:00
 
Fecha de Ingreso: enero-2003
Ubicación: Caracas
Mensajes: 439
Antigüedad: 14 años, 10 meses
Puntos: 0
lo que realmente deseo hacer es lo siguiente. yo en un checkbox cargo todos los paise que tengo en la bd. cuando la persona (usuario) hece click a algunos paises los estados de eso paises se deben cargar en otro sectopr de la pagina con sus respectivos checkbox. gracias por sus respuestas.
  #8 (permalink)  
Antiguo 15/06/2006, 08:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por Fabian olmos
lo que realmente deseo hacer es lo siguiente. yo en un checkbox cargo todos los paise que tengo en la bd. cuando la persona (usuario) hece click a algunos paises los estados de eso paises se deben cargar en otro sectopr de la pagina con sus respectivos checkbox. gracias por sus respuestas.
Pero todo eso lo harías integramente con Javascript .. si hablas de "un selector" que afecte a otro elemento del formulario, entiendo que estás en la misma página sin llamar a otra (página/script) ..

Lo que resulte de la selección del último .. es ahí lo que enviaras a un script PHP para su proceso final

Si tienes código .. exponlo para que queda más claro lo que estás haciendo.

(Por cierto .. es un "checbox" o un "Select múltiple" lo que usas? .. por eso es necesario ver tu código)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 15/06/2006, 08:29
 
Fecha de Ingreso: enero-2003
Ubicación: Caracas
Mensajes: 439
Antigüedad: 14 años, 10 meses
Puntos: 0
<?
$sql="select * from paises order by nombpais"; $db->consultar($sql);
$result=$db->getResultado();
if ($db->numfilas>0) {
while($fila= mysql_fetch_object($result))
{ echo "<input name='PaisP[]' id='PaisP[]' type='checkbox' value='". $fila->codpais ."' onclick='this.form.submit();' >".strtoupper($fila-nombpais)."<br>";
}

esto es lo que estoy haciendo, y dependiendo de lo que seleccione en estos checkbox se va a cargar otro igual, pero lo que no quiero es que el formulario se ejecute, si no hasta que haga click al boton guardar. }
?>
  #10 (permalink)  
Antiguo 15/06/2006, 08:32
Avatar de Azrael666  
Fecha de Ingreso: noviembre-2004
Mensajes: 652
Antigüedad: 13 años
Puntos: 1
pues quitas esto: onclick='this.form.submit();
__________________
ALOZORRO v5.0 (ahora en .es)
  #11 (permalink)  
Antiguo 15/06/2006, 08:35
 
Fecha de Ingreso: enero-2003
Ubicación: Caracas
Mensajes: 439
Antigüedad: 14 años, 10 meses
Puntos: 0
yo lo quito ok. por eso es quiero crear una funcion en javascript con php para que al seleccionar un pais se cargue el combo de los estados de ese pais.
  #12 (permalink)  
Antiguo 15/06/2006, 08:54
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por Fabian olmos
yo lo quito ok. por eso es quiero crear una funcion en javascript con php para que al seleccionar un pais se cargue el combo de los estados de ese pais.
Por qué usas checbox? .. deberías usar un SELECT .. por ejemplo como muetra la técnica completa esta FAQ:

http://www.forosdelweb.com/showthrea...999#post664999

Si te fijas .. esa es la solución PHP integramente (se recarga la página), pero podrías resolver el problema -sin recargar la página- (como sucede en ese caso) usando técnicas de "Ajax" (con estas técnicas puedes "llamar" a código PHP desde javascript por ejemplo sin recargar la página y cuando necesites los datos .. Tenemos un foro para tal fin .. date una vuelta por el) .... Y si no quieres usar "Ajax" .. tendrás que hacerlo TODO en javascript .. es decir .. la "generación" de los elementos necesarios (arrays de javacript y demás) lo harás con PHP .. pero una vez generado por PHP .. el proceso de seleción de un combo y que el otro "anidado" o "dependiente" presente otros datos será taréa de javascript integramente (no se recargará la página pero será más pesada pues tendrá que contener todos los datos y sus combinaciones posibles que resulten).

En tu ejemplo .. si seleccionas "varios" checkbox como así puedes hacerlo no tiene sentido .. se trata de seleccionar UNA opción de las que ahí presentes . ya sea con un "radio" (botón) o lo típico y factible con un "<select >" ...

Tampoco muestras en tu código (si pedimos código -completo- es por algo, para ayudarte mejor o tener idea en su contexto) como relacionas tus otros datos (supongo que eso lo tendras ya claro).


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 08:10.