Foros del Web » Programando para Internet » Javascript »

Generar variables de sesion desde javascript

Estas en el tema de Generar variables de sesion desde javascript en el foro de Javascript en Foros del Web. Buenas tardes a todos . Tengo un problemilla en el que me encuentro atascado a ver si podeis echarme una mano , me gustaria poner ...
  #1 (permalink)  
Antiguo 27/09/2011, 09:58
Avatar de rober_sant  
Fecha de Ingreso: septiembre-2011
Ubicación: Mexico df
Mensajes: 24
Antigüedad: 9 años, 5 meses
Puntos: 0
Pregunta Generar variables de sesion desde javascript

Buenas tardes a todos .

Tengo un problemilla en el que me encuentro atascado a ver si podeis echarme una mano , me gustaria poner mi web en varios idiomas y para ello realice un plantilla y cada texto lo asocie a una variable que tengo guardadas en ficheros y que se llaman a su debido tiempo. Me gustaria ahora poner unas banderas
en la web para interactuar con esto ficheros a traves de la variables de session , logre poner un campo select y que funcionase , pero me gustaria que no fuera un desplegable si no los iconos de la banderas y clickar sobre ellos , se que se puede hacer con javascript pero estoy un poco pez y no atino con el evento que tengo que poner en el boton . He probado con onclick y onchange pero no atino .. a ver si sabeis como ayudarme a generar las variables de session desde javascript..

El código que hice fue este pero como ya os digo no me funciono .. a ver que podeis sugerirme ..

<input type="image" name="espanol" onselect="cambio_idioma()" src="img/es.png" value="espanol"<?php if($_SESSION['idioma']=="espanol") echo "checked='checked'" ?>/>
<input type="image" name="frances" onselect="cambio_idioma()" src="img/fra.png" value="frances" <?php if($_SESSION['idioma']=="espanol") echo "checked='checked'" ?>/>

El resto de la programacion esta hecha en php , y lo que quiero es generar variables de session y enviarlas a la funcion "cambio_idioma()"

Bueno un saludo a todos y mil gracias por anticipado.
  #2 (permalink)  
Antiguo 27/09/2011, 13:25
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 12 años, 7 meses
Puntos: 1532
Respuesta: Generar variables de sesion desde javascript

te recuerdo que javascript es un lenguaje que se ejecuta en el cliente y php en el servidor, a lo sumo tendrás que enviar una petición http (sea GET o POST) enviando dicha variable y desde PHP modificando la variable de sesión.

si tu objetivo es no recargar la pagina, entonces prueba una petición HTTP vía AJAX
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 29/09/2011, 01:09
Avatar de rober_sant  
Fecha de Ingreso: septiembre-2011
Ubicación: Mexico df
Mensajes: 24
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Generar variables de sesion desde javascript

Gracias Mayco por tu respuesta.

Lo unico que busco es lo que estoy preguntando es decir interactuar con las variables de session con los botones de cambio de idioma , si sabes como hacerlo te lo agradeceria , se que se puede hacer pero todavia no he dado con el codigo...

un saludo.
  #4 (permalink)  
Antiguo 29/09/2011, 01:19
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.604
Antigüedad: 18 años, 10 meses
Puntos: 1283
Respuesta: Generar variables de sesion desde javascript

Hola:

Si es para idiomas, tal vez te interese usar banderitas flameantes, si te fijas en el código php del apunte, solo necesitas el session_start() al principio del código, y añadirle la asignación de la variable en la parte del código que indica que la bandera es animada...

Luego solo necesitas cambiar las urls (son las peticiones que comentaba maycolalvarez)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 29/09/2011, 08:53
Avatar de rober_sant  
Fecha de Ingreso: septiembre-2011
Ubicación: Mexico df
Mensajes: 24
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Generar variables de sesion desde javascript

Quizás tenga que reformular la pregunta , como bien dice Mayco hay que utilizar Ajax , de hecho lo estoy utilizando pero no me he explicado correctamente , lo que necesito es poder enviar un valor a una funcion de Ajax que es la que hace todo el truco. Ya tengo todo el php funcionando correctamente , pero lo que necesito es poder mandar a traves de unos iconos un valor u otro a esta funcion , en este caso (ingles, frances, español ...) , de hecho lo he logrado a traves de un select .. pero me gustaria que fuera de otra manera en vez de un desplegable, podria ser un input?? Esa es la pregunta..

Un saludo a todos y mil gracias por anticipado.
  #6 (permalink)  
Antiguo 29/09/2011, 11:02
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.604
Antigüedad: 18 años, 10 meses
Puntos: 1283
Respuesta: Generar variables de sesion desde javascript

Cita:
Iniciado por rober_sant Ver Mensaje
Quizás tenga que reformular la pregunta , como bien dice Mayco hay que utilizar Ajax...
Te he dado una respuesta que lamentablemente has ignorado (al menos eso parece), que no necesita Ajax, y de todas las respuestas que puedan darte, seguramente la más elegante... pero si quieres usar Ajax, debarás tener de todos modos un fichero en el servidor que recoja ese valor; y si es por get, deberás generar una url para enviar datos: enviar.php?idioma=hispano"... por post por Ajax será un poco más complejo (aunque no demasiado)... y supongo que sabes modificar variables de sesión y recibir valores de un formulario...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 29/09/2011, 12:24
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 12 años, 7 meses
Puntos: 1532
Respuesta: Generar variables de sesion desde javascript

Cita:
Iniciado por rober_sant Ver Mensaje
Quizás tenga que reformular la pregunta , como bien dice Mayco hay que utilizar Ajax , de hecho lo estoy utilizando pero no me he explicado correctamente , lo que necesito es poder enviar un valor a una funcion de Ajax que es la que hace todo el truco. Ya tengo todo el php funcionando correctamente , pero lo que necesito es poder mandar a traves de unos iconos un valor u otro a esta funcion , en este caso (ingles, frances, español ...) , de hecho lo he logrado a traves de un select .. pero me gustaria que fuera de otra manera en vez de un desplegable, podria ser un input?? Esa es la pregunta..

Un saludo a todos y mil gracias por anticipado.
NO, lo que yo dije es que si no quieres que se recargue la página debes usar AJAX, debido a que se puede hacer con request normales tal cual te indica @caricatos.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #8 (permalink)  
Antiguo 30/09/2011, 00:31
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.604
Antigüedad: 18 años, 10 meses
Puntos: 1283
Respuesta: Generar variables de sesion desde javascript

Hola:

Re-leyendo el tema, resulta que si tienes algo que funciona como quieres con un select y quieres cambiarlo haciendo la selección con banderas, justamente el apunte anterior al que te había pasado trataba sobre La estética de los formularios, y hay unas banderitas (justamente) que modifican unos controles checkbox... esos controles son equivalentes a los select múltiples, pero los controles radios son los equivalentes a select normales... el secreto (no hay secreto) es envolver las banderas con etiquetas label asociadas a los elementos radio... y esos radios deben ser equivalentes a cada option de tu select. (hasta ahí sin necesidad de javascript)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 30/09/2011, 03:04
Avatar de rober_sant  
Fecha de Ingreso: septiembre-2011
Ubicación: Mexico df
Mensajes: 24
Antigüedad: 9 años, 5 meses
Puntos: 0
Respuesta: Generar variables de sesion desde javascript

A ver si por fin logro entenderos y logro poner esto en varios idiomas y que se mantenga la session entre paginas, he utilizado GET para cambiar el idioma dentro de la misma pagina , es decir :

<?
$idiomas=array("es"=>"<img src=\"img/es.png\" width=\"15\" height=\"10\" alt=\"idioma espa&ntilde;ol\"/>","en"=>"<img src=\"img/en.png\" width=\"15\" height=\"10\" alt=\"idioma ingles\"/>", "fr"=>"<img src=\"img/fra.png\" width=\"15\" height=\"10\" alt=\"idioma frances\"/>","al"=>"<img src=\"img/al.png\" width=\"15\" height=\"10\" alt=\"idioma aleman\"/>","pt"=>"<img src=\"img/pt.png\" width=\"15\" height=\"10\" alt=\"idioma portugues\"/>");

foreach ($idiomas as $indice => $valor){echo("<a href=\"nuestrahistoria.php?idiomas=$indice\">$valo r</a>&nbsp;");}
?>

Como veis hago foreach y pongo varios enlaces que me trasmiten una variable idiomas u otra dentro de la misma pagina , pero el problema lo tengo cuando me voy a otra pagina del mismo dominio , la session no se me mantiene , ahí es donde surge el problema . Con GET .. que puedo solucionar en este caso? , puedo pasar variables de session con GET .. no se voy a probarlo..
  #10 (permalink)  
Antiguo 30/09/2011, 03:13
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.604
Antigüedad: 18 años, 10 meses
Puntos: 1283
Respuesta: Generar variables de sesion desde javascript

Hola:

En principio parece que tu problema no es de javascript sino de php... y el tratamiento en php de variables de sesión es relativamente fácil... La primera línea de la página tiene que ser <?php session_start(); ?>... y luego debes insertar la línea:

$_SESSION["idioma"] = (isset($_GET["idioma"])) ? $_GET["idioma"]: "es";

Creo que tú has puesto idiomas en plural, pero yo usé el singular por la coherencia en el código...

Avísanos si tu problema es de php para mover el tema (puedes reportarlo)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: funcion, php, variables, botones
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 15:00.