Foros del Web » Programando para Internet » PHP »

almacenar una variable javascript en una variable php

Estas en el tema de almacenar una variable javascript en una variable php en el foro de PHP en Foros del Web. Hola gente, bueno pasa lo siguiente tengo un form con 70 y pico de campos en el cual aparecen o desaparecen nuevos campos dependiendo de ...
  #1 (permalink)  
Antiguo 15/03/2012, 12:18
Avatar de KG4
KG4
 
Fecha de Ingreso: marzo-2012
Ubicación: Caracas
Mensajes: 7
Antigüedad: 12 años, 1 mes
Puntos: 1
almacenar una variable javascript en una variable php

Hola gente, bueno pasa lo siguiente tengo un form con 70 y pico de campos en el cual aparecen o desaparecen nuevos campos dependiendo de ciertas selecciones. Necesitaba hacer una vista previa del documento para lo que cree un boton vista previa que a su vez despliega una nueva ventana y en esta nueva ventana cree el mismo fromulario pero sin los input y select y en su lugar por medio de javascript hice referencia ala ventana madre y me traje los values y los imprimi. Hata ahi todo bien ahora sucede que como el numero de campos no es fijo me veo en la necesidad de hacer ciertas validaciones para mostrar o no dichos campos en la vista previa, esta validacion la realizo con php ya que me facilita ocultar o mostrar el codigo html necesario sin tantas complicacuiones, pero sucede que en la condicion al hacer la comparacion de valores el valor del campo a comparar lo recupero es con javascript y asigno un codigo javascript a una variable php imprime el mismo resultado a comparar pero contiene una cadena diferente ya que contiene el codigo javascript y la condicion nunca devuelve true. Ya que el codigo es extenso copio la parte relevante y comento de una vez que tambien intente pasar el valor por url pero quedo en las mismas porque el valor lo optengo con javascript, no se si alguien conoce el modo de que la comparacion funcione con el code js imbuido en la variable php o un modo de capturar el value del formulario de la ventana madre con php sin recargar la pagina para concervar el valor de los input, gracias de antemano.

//$a en este momento imprime Raster
<?php
$a="<script>document.write(window.opener.document. meta.elements[3].value)</script>";
if($a=="Raster"){
echo "prueba";?>
//aqui iria codigo html asociado a Raster
<?php } ?>
//mas codigo html
  #2 (permalink)  
Antiguo 15/03/2012, 12:33
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: almacenar una variable javascript en una variable php

le recuerdo que PHP es un script del lado del servidor, por lo que cuando la página con javascript se ejecuta PHP ya ha finalizado, necesita de alguna forma enviar peticiones HTTP al servidor (es decir PHP) para obtener esos valores, bien sea por formularios POST/GET o vía AJAX, porque lo que intenta hacer en PHP nunca obtendrá la variable de JS.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 15/03/2012, 13:15
Avatar de KG4
KG4
 
Fecha de Ingreso: marzo-2012
Ubicación: Caracas
Mensajes: 7
Antigüedad: 12 años, 1 mes
Puntos: 1
Respuesta: almacenar una variable javascript en una variable php

Bueno supongo entonces que la solucion sera algo con ajax y luego pasarla por url porque la cosa es que la pagina no se recargue para no perder el valor de los values, gracias.
  #4 (permalink)  
Antiguo 16/03/2012, 08:49
Avatar de KG4
KG4
 
Fecha de Ingreso: marzo-2012
Ubicación: Caracas
Mensajes: 7
Antigüedad: 12 años, 1 mes
Puntos: 1
resuelto

Quizas no me explique bien en un principio pero lo que necesitava era pasar una variable javascrip por url para luego en la open.window hacer la comparacion pongo igual la manera por si alguien tiene un problema similar:

Primero creas una funcion para almacenar el value del select en una variable y en la misma funcion haces el llamado a open.window y concatenas la variable a la direccion url

<script> function pasar_variablejs()´{
//indicas la posicion del elemento select en el form y asignas su valor a una variable
var variablejs=document.form.elements[0].value;
//llamas el metodo open.window y le concatenas la variable al paramertro que indica el target
window.open('ventana_desplegable.php?var='+variabl ejs);//aqui se podrian agregar entre comillas concatenados a la variable otros parametros como tamaño etc...
};
</script>

//luego lo que haces es en el boton vista previa llamar ala funcion en el onclick
<input type="button" value="vista previa" onclick"pasar_variablejs()">

luego en la pagina hija recives la variable con get

$var=$_Get['var'];

codigo html
<?php if($var=="Raster"){ ?>

codigo html relativo a los campos raster que quiero mostrar
<?php } ?>

mas codigo

Espero que le sirva a alguien lamento no haberme explicado bien en un principio

Etiquetas: pasarvarjavascriptporurl, variables, window.open, tipo
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 14:58.