Foros del Web » Programando para Internet » PHP »

como asigno a variable php valor de java script

Estas en el tema de como asigno a variable php valor de java script en el foro de PHP en Foros del Web. Hola... tengo un medio problema... Estoy abriendo una ventana emergente desde java script.. después de enviar unas variables por formulario asi: Código HTML: window.open('informes/resultado_informes.php','popup','width=750,height=350'); luego ...
  #1 (permalink)  
Antiguo 25/07/2005, 11:27
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
como asigno a variable php valor de java script

Hola... tengo un medio problema... Estoy abriendo una ventana emergente desde java script.. después de enviar unas variables por formulario asi:

Código HTML:
window.open('informes/resultado_informes.php','popup','width=750,height=350');
luego de esto.. en resultado_informes.php, recibo las variables por post asi..

Código HTML:
alert("Lo que tu has mandado: "+ opener.document.getElementById("cdciclo").value);
Pues, asi me doy cuenta que si tenga algo la variable.. ahora necesito que el valor de esta variable.. cdciclo, no sea mostrado en un alert, si no que me inicialice una variable... como hago? como lo hago en php teniendo en cuenta que es tomado asi en js... opener.document.getElementById("cdciclo").value
  #2 (permalink)  
Antiguo 25/07/2005, 11:39
Avatar de illman  
Fecha de Ingreso: mayo-2001
Mensajes: 115
Antigüedad: 22 años, 11 meses
Puntos: 0
Si te he entendido bien, tienes un avariable en JavaScript y quieres que ste disponible en PHP?
El PHP es un lenguaje de lado servidor, y el JavaSript de lado cliente, por tanto conso el Java tiene la variable, el PHP ya ha acabado de ejecutarse, y no podrás recoger ese valor, una solución por el ejemplo que pones sería mardarla por url.. dependiendo de donde salga ese valor.

window.open('informes/resultado_informes.php?cdciclo=VALOR','popup','wid th=750,height= 350');

así tendrás el valor como $_GET['cdciclo']:

Espero haberte ayudado, aunque mucho me temo que no será así.
  #3 (permalink)  
Antiguo 25/07/2005, 11:51
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Código PHP:
<?php 
$varphp 
"Hola Mundo.";
echo 
$varphp;
?>
Código HTML:
<script languaje="JavaScript">
var varjavascript = "<? echo $varphp; ?>";
alert(varjavascript);
</script> 

Última edición por erlingfiallos; 25/07/2005 a las 11:58
  #4 (permalink)  
Antiguo 25/07/2005, 11:55
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
es el valor desde java script hacia php

mm por ejemplo haciendo esto, logro imprimir en el popup el valor que llevo

document.write(opener.document.getElementById("cdc iclo").value);

pero la idea no es esa.. la idea es que ese valor de cdciclo mequede en una variable...

por lo general si en php inicializo una variable y le hago un echo.. veo que tiene...

$cdciclo = "valor";
echo $cdciclo;

entonces la idea seria.. que en vez de "valor" le llevo el $cdciclo lo que me trae desde el form.. de la ventana padre al abrir el popup..

grazie!

Última edición por Salome; 25/07/2005 a las 12:07
  #5 (permalink)  
Antiguo 25/07/2005, 12:16
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Primero te envie la forma de pasar variables de php a javascript.. ahora viene lo contrario y es de javascript a php..

Código PHP:
<?php
echo "<script languaje='JavaScript'>";
echo 
"var varjavascript = 'Hola Mundo 2';";
$javatophp varjavascript;
echo 
"document.write($javatophp)";
echo
"</script>";
?>
  #6 (permalink)  
Antiguo 25/07/2005, 12:25
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
nmmm nada

yo quiero que esto que hago en un alert

alert("Lo que tu has mandado: "+ opener.document.getElementById("cdciclo").value);

se me vea en una variable php.. es posible? es posible enviar el .value de la variable cdciclo que traigo desde otro ventana a una variable de php en la misma ventana emergente (popup)
  #7 (permalink)  
Antiguo 25/07/2005, 12:38
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
De esa forma se puede hacer.. si quieres que lo haga o al menos lo intente dilo.. solo que me parece que ya esta casi hecho con el codigo que te envie..
  #8 (permalink)  
Antiguo 25/07/2005, 12:43
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
es que yo hice la prueba y no me funcionó...

a ver.. si es asignar el valor a la variable asi como me dices.. funciona perfecto....

lo que quiero saber es como lo hago si lo paso como digo... desde window.open y hago referencia a la variabe con opener.document...

es decir.. a ver.. yo hago un alert asi... alert("Lo que tu has mandado: "+ opener.document.getElementById("cdciclo").value); y efectivamente en el alert puedo ver que tiene la variable ciclo que traigo desde la ventana donde realice el window.open...

y bueno mi pregunta concreta es como hago para que el valor de esta variable que traigo desde otra ventana... pueda verlo en el popup..

porque asi como me dices es claro

Código PHP:
<?php 
echo "<script languaje='JavaScript'>"
echo 
"var varjavascript = 'Hola Mundo 2';"
$javatophp varjavascript
echo 
"document.write($javatophp)"
echo
"</script>"
?>
pero para una variable que inicializo con un string... lo que no logro es inicializarla o mejor no sé como hacerlo cuando viene desde otra ventana y la veo con opener.document...


mmmm ahora si me entiendes .. el problema no esta en como inicializarla.. el problema esta en como hacerlo cuando el valor viene por post desde otra ventana... una ventana padre...
  #9 (permalink)  
Antiguo 25/07/2005, 13:10
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Todo esto junto en una pagina.php funciona bien.. espero le entiendas y lo puedas utilizar.

Código HTML:
<input type="text" name="cdciclo" id="cdciclo" size="20" maxlength="20" value="Escribe algo">
<input type="button" value="click" id="click" onclick="javascript:fx();"> 
Código PHP:
<?php
echo "<script languaje='JavaScript'>\n";
echo 
"function fx()\n";
echo 
"{\n";
echo 
" var varjava = document.getElementById('cdciclo').value;\n";
$javatophp varjava;
echo 
"alert($javatophp)\n";
echo 
"}\n";
echo 
"</script>\n";
?>
  #10 (permalink)  
Antiguo 25/07/2005, 13:30
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
mmm a ver a ver... enloquecereeee!!

hice todo lo que me dijiste.. y ok, me lanza el alert con el valor que llevo.. no hay lio con eso... pero sigo teniendo el mismo problema... no necesito un alert... necesito el echo a la variable php que necesito manejar para hacer unas operaciones

Código PHP:
<?php 
echo "<script languaje='JavaScript'>\n"
echo 
" var varjava = opener.document.getElementById('cdciclo').value;\n"
$javatophp varjava
echo 
"alert($javatophp)\n"
echo 
"</script>\n"
echo  
$javatophp;
?>
como vez.. en el código tengo..
Código PHP:
$javatophp varjava
y ok.. en el alert me muestra el valor que traigo en cdciclo...

pero al hacerle
Código PHP:
echo  $javatophp
me muestra es varjava como salida...
  #11 (permalink)  
Antiguo 25/07/2005, 14:41
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Guardando una variable de javascript a php estamos claros..
Código PHP:
$javatophp varjava
pero no puedes imprimirla de esta forma.. porque como dices.. lo que tendras es solamente el nombre de la variable en javascript..
Código PHP:
echo  $javatophp
porque la forma correcta seria:
Código PHP:
echo "document.write($javatophp);"
un ejemplo mas claro seria de esta forma:
Código PHP:
echo "<script languaje='JavaScript'>\n";
echo 
"{\n";
echo 
"var ancho = screen.width;\n";
echo 
"var alto = screen.height;\n";
echo 
"alert(ancho + 'x' + alto);\n";
$phpancho ancho;      // aqui paso variables jscript a php
$phpalto alto;
echo 
"document.write($phpancho + 'x' + $phpalto);"// aqui imprimo vars php
echo "}\n";
echo 
"</script>\n";
?> 
  #12 (permalink)  
Antiguo 25/07/2005, 14:45
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
mmm bueno, gracias de todas formas...

pero el lio es el mismo, no necesito imprimirla, necesito asignarla a una variable php.. y poder trabajar con ella...
  #13 (permalink)  
Antiguo 25/07/2005, 15:07
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Ok.. ahora entendi.. entonces lo que puedes hacer es guardar la variable de javascript en una cookie y luego recuperarla con Php..

Bueno.. es lo unico que se me ocurre..
  #14 (permalink)  
Antiguo 25/07/2005, 15:09
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 21 años, 5 meses
Puntos: 1
mmm bueno, gracias... si resuelvo algo te cuento...
  #15 (permalink)  
Antiguo 25/07/2005, 15:23
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Problema resuelto.. hay una fx en php que manda a llamar a una fx en javascript.. y como parametro se le envia el nombre del elemento html.. esto no puede fallar.. ya se me paso casi todo el dia en esto..

Código HTML:
<html>
<head>
<script language='JavaScript'>
var myVal = 'Ahora si.. El problema esta resuelto..!!';
function getvariable(val) {
var variable = eval(val);
document.write(variable);
}
</script>
<?php
function obtenervarjavascript($js_var_name) {
$x = "<script language='JavaScript'> getvariable('" . $js_var_name . "'); </script>";
return $x;
}
?>
</head>
<body>
<form name="form1">
<?php
$var1 = obtenervarjavascript("document.forms[0].name");
$var2 = obtenervarjavascript("myVal");
?>
<center><?php print "El nombre del formulario: " . $var1; ?></center><br>
<center><?php print "JScript guardada: " . $var2; ?></center><br>
</form>
 </body>
</html> 
Saludos
  #16 (permalink)  
Antiguo 25/07/2005, 15:30
Avatar de Galled  
Fecha de Ingreso: marzo-2005
Ubicación: Lima
Mensajes: 254
Antigüedad: 19 años
Puntos: 0
No se si entendi bien, pero tu quieres insertar datos en tu popup y luego que estos datos se encuentren en el opener (es decir, en la ventana que abrió el popup) ????

Pues, si es así podrías usar esto:
pagina_padre.php
Código PHP:
<FORM name="Formpadre">
<
input type="text" name="Inserta1">
<
input type="text" name="Inserta2">
<
input type="button" value="HAZ CLICK!! para abrir el popup" onClick="window.open('..../popup.php');">
</
FORM
popup.php

Código PHP:
<head>
  <
script language="JavaScript">
   var 
seleccionado = new Array("","","");
   function 
envia(){
 for (var 
02i++)
 {
seleccionado[i]=Formpopup.elements[i].value;
  
opener.document.Formpadre.elements[i].value seleccionado[i];
  }
   
close();
   }
  
</script> 

</head>
<body>
<form name="Formpopup">
<input type="text" value="Escribe Algo1">
<input type="text" value="Escribe Algo2">
<input type="button" name="enviar" value="Enviar" onclick="envia()">
</form> 
A ver si es lo que querías....
__________________
Mi blog
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 06:50.