Ver Mensaje Individual
  #6 (permalink)  
Antiguo 07/01/2003, 17:31
Avatar de BVis
BVis
 
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona
Mensajes: 104
Antigüedad: 22 años
Puntos: 0
Bueno, eso mismo hice yo hace un tiempo, y ésta fue mi técnica:

En cualquier página del sitio miro lo siguiente:

Código PHP:
// Si no está establecida la cookie del idioma...
if (!isset($_COOKIE['idioma_por_defecto']))
   
$id_idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
else 
// Si está...
   
$id_idioma=$_COOKIE['idioma_por_defecto'];

// Establecemos un IDIOMA POR DEFECTO, si el idioma del
// browser, no coincide con ninguno de los 'soportados'
if ($id_idioma!="es" && $id_idioma!="en" && $id_idioma!="fr")
   
$id_idioma="en"
Y en en un lugar de la página de cuyo nombre no quiero
acordarme:
Código PHP:
        <a href="principal.php?idioma_cookie=es"><img src="imagenes/spain.gif" border=0 target="principal"></a>
        <
a href="principal.php?idioma_cookie=en"><img src="imagenes/greatbritain.gif" border=0 target="principal"></a>
        <
a href="principal.php?idioma_cookie=fr"><img src="imagenes/france.gif" border=0 target="principal"></a
Ese es el lugar donde muestro las banderitas con diferentes idiomas. Al ser pulsadas esas banderitas, en el 'principal.php' hago:

Código PHP:
if (isset($_GET['idioma_cookie'])) {
   
// Cookie con caducidad a las 1000 horas, que son unas cuantas...
   
setcookie("idioma_por_defecto",$_GET['idioma_cookie'],time()+3600000);
   
header("Location: index.html");
   exit(
0);

En este caso, el sitio está hecho para tres idiomas, el inglés, el francés y el castellano, es facilmente generalizable para otros. Tan solo habría que modificar la parte donde se escoge el idioma por defecto entre los 'soportados'.

1 Saludo.
__________________
"Yo opino lo mismo que BVis, el de 'forosdelweb' " - Bill Gates