Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/04/2010, 14:25
klaudio83
 
Fecha de Ingreso: octubre-2009
Mensajes: 70
Antigüedad: 14 años, 6 meses
Puntos: 0
Pregunta Pagina en varios idiomas

Holas espero puedan ayudarme, me explico:
tengo un código para traducir el texto de mi pagina, utilizando variables en php. el problema que tengo es que soy nuevo en esto del php y el código se ve sencillo pero no puedo hacer que funcione correctamente debe haber algún detalle que no e podido encontrar. dejo el código esperando que alguien me ayude con esto.

Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<?php
/* Este código detecta el idioma por defecto del visitante.
Sin embargo, si el visitante indica un idioma mediante la URL (siguiendo un enlace) toma preferencia */

// Miramos si el usuario ha definido un idioma por defecto en su navegador
if ($HTTP_ACCEPT_LANGUAGE != ''){
 
// Si es así, miramos que idiomas ha definido:
    
$idiomas explode(","$HTTP_ACCEPT_LANGUAGE); # Convertimos HTTP_ACCEPT_LANGUAGE en array
   
 /* Recorremos el array hasta que encontramos un idioma del visitante que coincida con los idiomas en que está disponible nuestra web */
    
for ($i=0$i<count($idiomas); $i++){
  
// Si aún no hemos definido la variable $idioma...
        
if (!isset($idioma)){
   
/* Miramos si tiene algún idioma de los disponibles entre sus favoritos.
   Empezando por su primer favorito y acabando por su último favorito */
            
if (substr($idiomas[$i], 02) == "es"){$idioma "es";}
            if (
substr($idiomas[$i], 02) == "en"){$idioma "en";}
            if (
substr($idiomas[$i], 02) == "de"){$idioma "de";}
            
//if (substr($idiomas[$i], 0, 2) == "gl"){$idioma = "gl";}
        
}
    }
}

// Si aún no hemos encontrado ningún idioma que nos convenga, mostramos la web en el idioma por defecto
if (!isset($idioma)){$idioma "es";}

// Ahora incluimos la plantilla de idioma correspondiente al idioma que pertoque:
include("idioma_$idioma.php");
?>
<html>
<head>
<?php // Ahora sustituimos los textos por variables (contenidas en textos_$idioma.php) ?>
 <title><?php echo $t_titulo?></title>
</head>

<body>
<h1><?php echo $t_cabecera?></h1>
<p><?php echo $t_texto?></p>
<ul><?php // Estos textos no los sustituímos porque son los nombres de los idiomas en el idioma al que apuntan ?>
 <?php if ($idioma != 'es') { ?><li><a href="plantilla.php?idioma=es">Español</a></li><? ?>
 <?php if ($idioma != 'en') { ?><li><a href="plantilla.php?idioma=en">English</a></li><? ?>
 <?php if ($idioma != 'de') { ?><li><a href="plantilla.php?idioma=de">Deutsch</a></li><? ?>
 
</ul>

</body>
</html>
Código PHP:
<?php
// Textos en español. 
$t_titulo "Página en varios idiomas";
$t_cabecera "Bienvenido";
$t_texto "Esta página está disponible en varios idiomas";
?>
Código PHP:
<?php
// Textos en Ingles.
$t_titulo "Site in several languages";
$t_cabecera "Welcome";
$t_texto "This page is available in several languages";
?>
Código PHP:
<?php
// Textos en Aleman.
$t_titulo "Diese Seite ist in mehreren Sprachen verfügbar";
$t_cabecera "Willkommen";
$t_texto "Diese Seite ist in mehreren Sprachen verfügbar";
?>
Espero su ayuda muchas gracias.