Alguien sabe como hacer para cambiar el valor de la variable?, lo he intentado poniendo el código en la sección onClick del hipervínculo pero no me funciona.
A ver si se os ocurre algo. Un saludo.
![Negando](http://static.forosdelweb.com/fdwtheme/images/smilies/negar.gif)
| ||||
lo podrias hacer con las variables en GET. ejemplo: index,php=idioma=espanol segun sea el caso, ya despues segun el valor de la variable idioma, incluyes el archivo de lenguage especificado. |
| |||
lo que te trato de decir Danger, es esto Código PHP: Código PHP: |
| ||||
Gracias, pero no acaba de ser eso... Ya sé que funciona, ya lo había probado pero gracias de todas formas. Mi idea era usar unha variable de sesión y para eso necesitaría algo como meter esto en el link: <a href="pagina.php?idioma=espanol" onClick="<?php $idioma="ES"; ?>>Espanol</a> <a href="pagina.php?idioma=ingles" onClick="<?php $idioma="EN"; ?>> Ingles</a> <a href="pagina.php?idioma=frances" onClick"<?php $idioma="FR"; ?>>Frances</a> El problema es que si lo hago así en cuanto pulso el link a español se me ejecutan los tres trozos de php e $idioma pasa a valer "FR". No sé si se puede hacer algo así, pero si a alguien se le ocurre...??? Venga, gracias por vuestras respuestas, un saludo. ![]() |
| |||
Bueno ERO, el hecho que coloques las lineas de tipo onClick"<?php $idioma="FR"; ?> va a cambiar siempre el valor de tu variable, si quieres que el valor de la variable cambie para el mismo script deberias utilizar <a href="<?php $PHP_SELF ?>?idioma=espanol">Espanol</a> y obviar el onClick="<?php $idioma="ES"; ?> , ya que el el interprete de PHP lo que hace es leer todo lo que pongamos en etiquetas del tipo <?php ?>, lo que yo haria en tu caso entonces es colocar al inicio de tu pagina unas lineas que evaluen el estado de tu variable...por ejemplo if($idioma=="espanol") { header(Location:'paginaenespanol.php'); } if($idioma=="ingles") { ......en fin bueno cada cual lo hace como mejor lo crea conveniente esta es tan solo la forma en que yo resolveria tu problema... Chaop! |
| ||||
![]() Al final he conseguido hacer lo que quería, muchas gracias por vuestra ayuda. A ver que os parece mi solución: Como quería tener en cada página de mi sitio web los enlaces a otras páginas sin pasar variables por URL (para no tenerlos triplicados, los 3 idiomas que uso) he hecho lo siguiente: 1.- Inicio una sesión y declaro una variable de sesión $idioma. 2.- Después tengo un if para ver si está definida otra variable $HTTP_GET_VARS["idioma2"], en caso afirmativo $idioma = $HTTP_GET_VARS["idioma2"]; sino $idioma = valor_por_defecto; 3.- Luego tengo los enlaces de cambio de idioma así: <p><a href="<?php $PHP_SELF ?>?idioma=ES">Castellano</a></p> <p><a href="<?php $PHP_SELF ?>?idioma=GA">Galego</a></p> <p><a href="<?php $PHP_SELF ?>?idioma=EN">Inglés</a></p> para actualizar la propia página. 4.- Por último los enlaces a otras páginas sin pasar ninguna variable pero con la misma comprobación entre la variable de sesión $idioma y $HTTP_GET_VARS["idioma2"] al comienzo de cada página destino. Gracias a Danger_ , eagoweb2 y luchope. ![]() ![]() ![]() |