Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/03/2007, 05:37
Vane_
 
Fecha de Ingreso: febrero-2007
Mensajes: 244
Antigüedad: 17 años, 2 meses
Puntos: 0
Multilenguaje con cookies

Hola a todos,

Se que lo que os voy a preguntar lo he visto por el foro, pero no exactamente como yo lo quiero hacer. Quiero que mi web sea multilenguaje mediante cookies. Tengo en cada pantalla 2 imágenes que según las que pulses, te lo pondrá todo en castellano o en inglés. Por defecto, lo tengo en castellano. Todo eso bien.

En home.php si cambias de idioma te lo hace bien. El problema es en el resto de las páginas, que si pulsas en cualquier imagen te vuelve a la inicial (antes de validarse los usuarios) y eso es lo que no quiero. Quiero que se quede en la misma pag. Sé donde está el fallo pero es que no se me ocurre otra idea. Aquí os pongo lo que tengo. Por cierto, NO quiero controlarlo con variables por cabecera, sólo con cookies.

2 ficheros con variables en español y en inglés. Hasta aquí correcto.

En home.php:

Cita:
<?php
if (!$_POST["lang"]) {
$idioma = "ES";
} else {
$idioma = $_POST['lang'];
}

if (empty($_COOKIE["lang"]) || !$_COOKIE["lang"]) {
setcookie("lang", $idioma, time() + 5000);
}

$cook = $_COOKIE["lang"];

if ($cook == "ES") {
include "lang/ES/lang.php";
} else
if ($cook == "EN") {
include "lang/EN/lang.php";
}
?>

<html>
....
....
// En las imágenes, tengo esto:

<a href=" <?php $_SESSION['idioma']= 'ES'; ?> espaniol.php"><img src="../../imagenes/bandera_sp2.jpg" width="26" height="16"></a>

<a href=" <?php $_SESSION['idioma']= 'EN'; ?> english.php"><img src="../../imagenes/bandera_en2.jpg" width="26" height="16"></a>

....
</html>
Y mi problema esta en english.php y en espaniol.php que tengo esto y no se como solucionarlo:

Cita:
english.php
<?php
setcookie("lang", "EN");
header ("location: home.php");
?>

espaniol.php
<?php
setcookie("lang", "ES");
header ("location: home.php");
?>
Alguna idea ??