Foros del Web » Programando para Internet » PHP »

¿Como hacer pagina web Multi-idioma?

Estas en el tema de ¿Como hacer pagina web Multi-idioma? en el foro de PHP en Foros del Web. Pues, se como hacerla, pero no se como implementarla, ya que soy muy novato en PHP... Pero de que algo se se algo... Si que ...
  #1 (permalink)  
Antiguo 07/07/2007, 15:49
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Pregunta ¿Como hacer pagina web Multi-idioma?

Pues, se como hacerla, pero no se como implementarla, ya que soy muy novato en PHP...

Pero de que algo se se algo...

Si que en otras palabras, se como funcionaria mas o menos en teoria :D

Bueno, seria mas o menos asi...

En el header de la pagina

Código:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $idioma; ?>" lang="<?php echo $idioma; ?>">
<meta http-equiv="Content-Language" content="<?php echo $idioma; ?>">
Eso, haria que cuando se detecte que el navegador prefiera las paginas en español, ingles, frances etc...

tire a la pagina en el idioma...

Ahora los archivos que contienen cada palabra, frase...

españo.php

Código:
<?php
global $I;
$L['conectar'] =						"Conectar";
?>
ingles.php

Código:
<?php
global $I;
$L['conectar'] =						"Login";
?>
italiano.php

Código:
<?php
global $I;
$L['conectar'] =						"Entra";
?>
Pero, no sé, com ohacer para que se impriman los las palabras que marcan segun el archivo por medio de echo...

Pero como hago, para conectar a todos los archivos entre si ?

Osea, que cuando se meta a la pagina, automaticamente, se elija el idioma ?

Como tengo que conectar los archivos .php para que funcion perfectamente ?

Alguien me podria ayudar ?

Como vendria siendo exactamente ?

Y claro, que despues si, el navegador esta mal configurado, se pueda cambiar el idioma por medio de una cookie...

Ojala me puedan ayudar

Saludos y muchas gracias de antemanos
  #2 (permalink)  
Antiguo 07/07/2007, 15:56
Avatar de Raulmmmm  
Fecha de Ingreso: marzo-2007
Ubicación: En otro lugar que tú
Mensajes: 1.549
Antigüedad: 17 años, 1 mes
Puntos: 36
Re: ¿Como hacer pagina web Multi-idioma?

Mirate este link:
http://www.aeoris.net/escritos/php/c...n-gettext.html
  #3 (permalink)  
Antiguo 07/07/2007, 16:48
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por Raulmmmm Ver Mensaje
Mirate este link:
Aqui va link...
Gracias por la respuesta

Pero es una libreria entera esa, eso es como muy pesado, quiero lo justo y lo necesario y ademas no tengo la posibilidad de instalarle otras extenciones...

Te agradesco mucho la respuesta, saludos ;)
  #4 (permalink)  
Antiguo 07/07/2007, 17:10
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Te aconsejo a que busques por internet ya que hay diversas cosas sobre éste tema... pero te invito a que mires este link:
Paginas multi-idioma con php
Suerte che, cualquier cosa pregunta...
  #5 (permalink)  
Antiguo 07/07/2007, 21:49
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por carmagedon Ver Mensaje
Te aconsejo a que busques por internet ya que hay diversas cosas sobre éste tema... pero te invito a que mires este link:
Paginas multi-idioma con php
Suerte che, cualquier cosa pregunta...
Gracias!, lo vere ;)

Saludos y muchas gracias!
  #6 (permalink)  
Antiguo 07/07/2007, 22:17
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Lo revise, y vi que la forma 1, es lo que yo queria, osea era lo que me referia...

Pero como se implementa ?

Com ose hace para que quede agregada a la pagina ?

Por medio de If ?

Soy novato en esto, alguien que me pueda ayudar ?

Saludos! y muchas gracias por las respuestas
  #7 (permalink)  
Antiguo 08/07/2007, 11:20
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Claro, tenés que hacer condiciones...
Código:
<?php
If (...lenguaje es el español...)
{
?>
Aca esta toda la web en español
<?php
}
?>

<?php
If (...lenguaje es el ingles...)
{
?>
Here the this all Web in English 
<?php
}
?>

<?php
If (...lenguaje es el italiano...)
{
?>
Qui questo tutto il fotoricettore in Italia 
<?php
}
?>
Tu script sería una cosa así si no me equivoco... en fin, dale un par de vueltas con los IF y te saldrá..
Saludos
  #8 (permalink)  
Antiguo 08/07/2007, 16:10
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por carmagedon Ver Mensaje
Claro, tenés que hacer condiciones...
Código:
<?php
If (...lenguaje es el español...)
{
?>
Aca esta toda la web en español
<?php
}
?>

<?php
If (...lenguaje es el ingles...)
{
?>
Here the this all Web in English 
<?php
}
?>

<?php
If (...lenguaje es el italiano...)
{
?>
Qui questo tutto il fotoricettore in Italia 
<?php
}
?>
Tu script sería una cosa así si no me equivoco... en fin, dale un par de vueltas con los IF y te saldrá..
Saludos

Muchas gracias , lo pondre a pruebas :D

Saludos!
  #9 (permalink)  
Antiguo 08/07/2007, 16:49
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Ya, ya sé como hacerlo, pero no como implementarlo...

Los archivos de idiomas...
es.php
<?php
$nombre = "nombre";
$numero = "numero";
$manzana = "manzana";
?>
en.php
<?php
$nombre = "name";
$numero = "number";
$manzana = "apple";
?>
de.php
<?php
$nombre = "Name";
$numero = "Numbre";
$manzana = "Apfel";
?>

Para sacar los resultados en la pagina seria algo asi:
<?php
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
?>
El Cual arrojaria:
Juan
2
Verde/Green/Grün dependiendo del idioma detectado...

Para Elegir los idiomas...
<?
$espanol= include ("es.php");
$ingles= include ("en.php");
$aleman= include ("de.php");

$idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);

if ($idioma == "es")
{echo "$espanol";}
elseif ($idioma=="de")
{echo "$aleman";}
else
{echo "$ingles";}
?>

Ahora...

Como lo hago para conectar los archivos entre si?

El idioma de Default es ingles, osea si el navegador detecta que es frances, le va a mostrar ingles...
ahora si es español, le muestra español, sies aleman le muestra aleman, si es ingles, ingles...
Pero ahora mi duda que me asalta es...

Como lo hago para unirlos ?

Osea me refiero, que tener un archivo index.php con el diseño y todo y que valla imprimiendo por medio de echo (echo $nombre,echo $numero,echo $manzana), pero que sea automatizado ?
Osea, que sea en la misma pagina index.php que arroje las palabras del idioma ?
Osea, en otras palabras, como conectar los archivos entre si ?
Como conectar las variables con el index?
Con alguna global ?

Algo estoy haciendo mal, pero no sé que :shock:

Muchas gracias por la ayuda, de verdad muchas gracias, me han ayudado un monton :D

Saludos!
  #10 (permalink)  
Antiguo 08/07/2007, 20:10
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Creo que un ejemplo sencillo en su desarrollo, sería de esta forma...
Código:
<?php
$idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);
if ($idioma == "es")
{
include("es.php");
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
}
if ($idioma=="de")
{
include("de.php");
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
}
if ($idioma="en")
{
include("en.php");
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
}
?>
Espero que te sirva... cualquier cosa, vuelve a preguntar que para eso estamos, ayudarnos :)
Suerte che..

Última edición por carmagedon; 08/07/2007 a las 20:21
  #11 (permalink)  
Antiguo 09/07/2007, 16:54
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Muchas gracias!

Pero para ser franco, solo me lo lee en ingles, independiente del idioma que este mis navegadores esten :O

Probe con elseif y else igual me la tira en ingles o con error :O

Muchas gracias por tu ayuda ^^

Parece que te voy atener quedar un premio xP

Saludos y mil gracias por la ayuda!

Última edición por Chicoblog; 09/07/2007 a las 17:00
  #12 (permalink)  
Antiguo 09/07/2007, 18:46
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Buenas, de nada, es un placer tratar de ayudar... (a mi tambien me gusta recibir ayuda...)
Es raro, yo todo lo que te digo no lo testeo en mi localhost, asique es problable que no funcione al 100%... prueba con hacer algo de esto y dale un par de vueltas...
Código:
<?php
if ($HTTP_ACCEPT_LANGUAGE != ''){
$idiomas = explode(",", $HTTP_ACCEPT_LANGUAGE); 
    for ($i=0; $i<count($idiomas); $i++){
    if (!isset($idioma)){
            if (substr($idiomas[$i], 0, 2) == "es"){$idioma = "es";}
            if (substr($idiomas[$i], 0, 2) == "de"){$idioma = "de";}
            if (substr($idiomas[$i], 0, 2) == "en"){$idioma = "en";}
        }
    }
}
if (!isset($idiomas)){$idiomas = "es";} #estableces uno por defecto

<?php 
if ($idiomas == 'es') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
}
if ($idiomas == 'en') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
} 
if ($idiomas == 'de') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
} 
?>
Suerte che, cualquier premio es bienvenido xDDDDDD
  #13 (permalink)  
Antiguo 10/07/2007, 19:40
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

No me arroja nada, ningun error ni nada de codigo, me sale todo en blanco :S

Pero tengo uan pregunta...

Se puede hacer por medio de Fuction ?

Osea, hacer el index, todo hecho por function y todo y llamar las variables por medio de fuction y que un archivo externo, desida el idioma de la pagina ?

Asi vi el Scrip de un scrip, que lo hacia algo asi...

Pero para ser franco, no entendi como era el Scrip :O!

Mañana me pongo a trabajar de pleno en esto, si me resulta pongo el resultado aqui, para que otras personas no se compliquen ;)

Saludos y muchas gracias, si alguien sabe de como hacerlo por medio de Function, o sabe de como podria ser por medio de fuction, cualquier ayuda es bienvenida, muychas gracias carmagedon por tu ayuda :D

Saludos!

PD: Alguien que me pueda orientar bien con lso Function , osea como escribirlo bien ?, no lo entiendo muy bien =S, algun link donde se explique bien lso function y como utilizarlos con los Echos y demases ? :O
  #14 (permalink)  
Antiguo 11/07/2007, 12:24
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

De nada, prueba con darle un par de vueltas a ese script, amplia tus conocimientos acerca de la funcion que te mostramos, ve a php.net e investiga..
Fijate si pudiste hacer algo, cualquier cosa, nos volves a comentar y vemos como lo solucionamos.
Saludos
  #15 (permalink)  
Antiguo 11/07/2007, 12:36
 
Fecha de Ingreso: septiembre-2006
Mensajes: 29
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por carmagedon Ver Mensaje
Buenas, de nada, es un placer tratar de ayudar... (a mi tambien me gusta recibir ayuda...)
Es raro, yo todo lo que te digo no lo testeo en mi localhost, asique es problable que no funcione al 100%... prueba con hacer algo de esto y dale un par de vueltas...
Código:
<?php
if ($HTTP_ACCEPT_LANGUAGE != ''){
$idiomas = explode(",", $HTTP_ACCEPT_LANGUAGE); 
    for ($i=0; $i<count($idiomas); $i++){
    if (!isset($idioma)){
            if (substr($idiomas[$i], 0, 2) == "es"){$idioma = "es";}
            if (substr($idiomas[$i], 0, 2) == "de"){$idioma = "de";}
            if (substr($idiomas[$i], 0, 2) == "en"){$idioma = "en";}
        }
    }
}
if (!isset($idiomas)){$idiomas = "es";} #estableces uno por defecto

<?php 
if ($idiomas == 'es') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
}
if ($idiomas == 'en') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
} 
if ($idiomas == 'de') { 
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
} 
?>
Suerte che, cualquier premio es bienvenido xDDDDDD
Holas!!
Ya que en los tres if se hace exactamente lo mismo...
no sería mejor cargar sólo la 'biblioteca de mensajes' que corresponda??
Si el idioma es español, cargas el archivo es.php, si es ingles, en.php y asi con cada idioma que quieras o pretendas soportar...
Asi evitas llenar de indesables if el código y extenderlo demasiado.
Todo funcionaría bien, mientras los nombres de las variables sean los mismos.
Acerca de como identificarlo (el idioma), no puedo aportar mucho.

Suerte con eso y saludos!
  #16 (permalink)  
Antiguo 11/07/2007, 16:15
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por MarcoAntoine Ver Mensaje
Holas!!
Ya que en los tres if se hace exactamente lo mismo...
no sería mejor cargar sólo la 'biblioteca de mensajes' que corresponda??
Si el idioma es español, cargas el archivo es.php, si es ingles, en.php y asi con cada idioma que quieras o pretendas soportar...
Asi evitas llenar de indesables if el código y extenderlo demasiado.
Todo funcionaría bien, mientras los nombres de las variables sean los mismos.
Acerca de como identificarlo (el idioma), no puedo aportar mucho.

Suerte con eso y saludos!
Y como seria eso ?

Osea como lo dices tu ?
Saludos xP
  #17 (permalink)  
Antiguo 11/07/2007, 16:35
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Hmmm prueba con esto:

Código:
<?php
$languajes_array = array(
"en" => "English",
"es" => "Español",
);

$Languajes_from_browser=$_SERVER["HTTP_ACCEPT_LANGUAGE"];
$pos=strpos($Languajes_from_browser,";");  

if ($pos>0){
$Languajes_from_browser=substr($Languajes_from_browser,0,$pos);
}
$languajes=split(",",$Languajes_from_browser);
foreach ($languajes as $key => $value){
        if($languajes_array[$value]!=""){
                print $languajes_array[$value]."<BR>";
        }else{
                print "$value - no identificado<BR>";
        }
}
?>
Prueba en darle un par de vueltas... en fin... creo que este ejemplo está medio claro... pero bueno, cualquier cosa, nos comentas!
Saludos

EDIT: Por cierto, esto lo saqué de aca: Fuente

Última edición por carmagedon; 11/07/2007 a las 16:41
  #18 (permalink)  
Antiguo 11/07/2007, 16:45
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Ya no se que más decirte, lo unico es que te aconsejo es que mires este script:
Código:
<?php
// cambia pagina.php por el archivo correcto de acuerdo al pais

if (isset($pais) && ($pais <> '')) {
$dgo_pais = substr($pais,0,5);
} else {
$dgo_pais = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"],0,5);
}
switch ($dgo_pais) {
case "es-mx":
//si el pais es mexico
include("pagina.php");
break;

case "es-ar":
//si el pais es argentina
include("pagina.php");
break;

case "es-cl":
//si el pais es chile
include("pagina.php");
break;

case "es-ve":
//si el pais es venezuela
include("pagina.php");
break;

case "pt-br":
//si el pais es brasil
include("pagina.php");
break;

case "es-co":

//si el pais es colombia
include("pagina.php");
break;

case "es-ec":

//si el pais es ecuador
include("pagina.php");
break;

case "es-uy":

//si el pais es uruguay
include("pagina.php");
break;

default:
//si es algun otro pais
include("pagina.php");
break;
}
?>
Y le des duro al coco xDDDDD... No se como solucionarte el problema ya xD
Suerte che...
  #19 (permalink)  
Antiguo 12/07/2007, 10:25
 
Fecha de Ingreso: septiembre-2006
Mensajes: 29
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por Chicoblog Ver Mensaje
Ya, ya sé como hacerlo, pero no como implementarlo...

Los archivos de idiomas...
es.php
<?php
$nombre = "nombre";
$numero = "numero";
$manzana = "manzana";
$color = "verde";
?>
en.php
<?php
$nombre = "name";
$numero = "number";
$manzana = "apple";
$color = "green";
?>
de.php
<?php
$nombre = "Name";
$numero = "Numbre";
$manzana = "Apfel";
$color = "grün";
?>

Para sacar los resultados en la pagina seria algo asi:
<?php
echo $nombre . " Juan";
echo $numero . " 2";
echo $manzana . " Verde/Green/Grün";
?>
El Cual arrojaria:
Juan
2
Verde/Green/Grün dependiendo del idioma detectado...

Para Elegir los idiomas...
<?
$espanol= include ("es.php");
$ingles= include ("en.php");
$aleman= include ("de.php");

$idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);

if ($idioma == "es")
{echo "$espanol";}
elseif ($idioma=="de")
{echo "$aleman";}
else
{echo "$ingles";}
?>
Hola, mira, sigamos con esa idea, que a mi punto de vista es la mejor.
Defines los 'n' idiomas que vas a soportar en 'n' archivos distintos.
Una buena idea sería tener esa 'biblioteca de mensajes' con los nombres del idioma, y hacemos lo sgte:

Código:
<?php
$idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);
include("lang/".$idioma.".php"); //si los archivos estan dentro de ./lang
echo $nombre . " Juan";
echo $numero . " 2"; 
echo $manzana . " ".$color; 
?>
Con eso cargas sólo un archivo, el cual define los mensajes, la gracia está en incluir el archivo que corresponda, según el idioma que tenga el usuario, cosa en lo que yo no te puedo ayudar ya que no estoy familiarizado...
Lo que yo hice alguna vez fue decirle al usuario que lo seleccione, pero si sabes como verlo automáticamente, mejor aún!

Suerte!
  #20 (permalink)  
Antiguo 12/07/2007, 11:29
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por MarcoAntoine Ver Mensaje
Hola, mira, sigamos con esa idea, que a mi punto de vista es la mejor.
Defines los 'n' idiomas que vas a soportar en 'n' archivos distintos.
Una buena idea sería tener esa 'biblioteca de mensajes' con los nombres del idioma, y hacemos lo sgte:

Código:
<?php
$idioma=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,5);
include("lang/".$idioma.".php"); //si los archivos estan dentro de ./lang
echo $nombre . " Juan";
echo $numero . " 2"; 
echo $manzana . " ".$color; 
?>
Con eso cargas sólo un archivo, el cual define los mensajes, la gracia está en incluir el archivo que corresponda, según el idioma que tenga el usuario, cosa en lo que yo no te puedo ayudar ya que no estoy familiarizado...
Lo que yo hice alguna vez fue decirle al usuario que lo seleccione, pero si sabes como verlo automáticamente, mejor aún!

Suerte!
Esta de pelos!!!!

Muchas gracias, me sivrcio un monton!
Pero ahora viene el problema cuando el navegador tiene 2 idiomas Español, y Ingles en el idioma del navegador y tambien cuando se tiene ES-AR o ES-MX

Como se puede hacer solo para tener la primera parte ?
En otras palabras ES? o EN ? solo la primera parte y no la segunda ?

y tambien dejar un idioma como Default, si no tiene ninguno de los idiomas disponibles o si simplemente no tiene ?

Muchas gracias!
lo agradesco un monton ^^

Saludos!
  #21 (permalink)  
Antiguo 12/07/2007, 12:05
Avatar de deet  
Fecha de Ingreso: mayo-2005
Ubicación: Córdoba - Argentina
Mensajes: 269
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: ¿Como hacer pagina web Multi-idioma?

Hola Chicoblog,

solo debes cambiar la primera funcion en donde decia 5 poné 2, solo te toma los dos primero caracteres que te devuelve la variable HTTP_ACCPT_LANGUAGE.

Código PHP:
<?php
$idioma
=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
include(
"lang/".$idioma.".php"); //si los archivos estan dentro de ./lang
echo $nombre " Juan";
echo 
$numero " 2"
echo 
$manzana " ".$color
?>
aqui te puedes bajar el manual de PHP en formato chm para que lo tengas en tu computadora:

www.php.net/get/php_manual_es.chm/from/a/mirror

manual oficial online:
ar.php.net

link de la funcion tratada en este post:
http://ar.php.net/manual/es/function.substr.php

saludos, Diego.
  #22 (permalink)  
Antiguo 12/07/2007, 14:08
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por deet Ver Mensaje
Hola Chicoblog,

solo debes cambiar la primera funcion en donde decia 5 poné 2, solo te toma los dos primero caracteres que te devuelve la variable HTTP_ACCPT_LANGUAGE.

Código PHP:
<?php
$idioma
=substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2);
include(
"lang/".$idioma.".php"); //si los archivos estan dentro de ./lang
echo $nombre " Juan";
echo 
$numero " 2"
echo 
$manzana " ".$color
?>
aqui te puedes bajar el manual de PHP en formato chm para que lo tengas en tu computadora:

www.php.net/get/php_manual_es.chm/from/a/mirror

manual oficial online:
ar.php.net

link de la funcion tratada en este post:
http://ar.php.net/manual/es/function.substr.php

saludos, Diego.
Hey, muchas gracias!

No sabia que se podia tener el manual de php en la pc :O

Muchas gracias ^^

Muchas gracias a todos!
se lo agradesco!!!!!

se los tendre eternamente agradecido, si yo puedo ayudar en algo, me avisan no mas xP

Saludos y muchas gracias!
  #23 (permalink)  
Antiguo 12/07/2007, 14:59
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Re: ¿Como hacer pagina web Multi-idioma?

Me podria haber evitado buscar tanto codigo, si le pegaba un par de vueltas, con menos de 10 lineas solucionaba todo xDD
Saludos
  #24 (permalink)  
Antiguo 12/07/2007, 15:57
 
Fecha de Ingreso: septiembre-2006
Mensajes: 29
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Cita:
Iniciado por Chicoblog Ver Mensaje
Esta de pelos!!!!

Muchas gracias, me sivrcio un monton!
Pero ahora viene el problema cuando el navegador tiene 2 idiomas Español, y Ingles en el idioma del navegador y tambien cuando se tiene ES-AR o ES-MX

Como se puede hacer solo para tener la primera parte ?
En otras palabras ES? o EN ? solo la primera parte y no la segunda ?

y tambien dejar un idioma como Default, si no tiene ninguno de los idiomas disponibles o si simplemente no tiene ?

Muchas gracias!
lo agradesco un monton ^^

Saludos!
Pues de nada!
Sorry por lo del substr, ni me fijé en los parámetros que se le mandaban...

Cita:
Iniciado por deet Ver Mensaje
aqui te puedes bajar el manual de PHP en formato chm para que lo tengas en tu computadora:

www.php.net/get/php_manual_es.chm/from/a/mirror
Gracias!! Yo tampoco lo sabía!
  #25 (permalink)  
Antiguo 12/07/2007, 17:58
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Muchas gracias a todos, por la eterna ayuda en este topic!!!!

Muchas gracias ^^

Les agradesco un monton!!!!!
  #26 (permalink)  
Antiguo 12/07/2007, 18:11
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Ahora me surgio un problema...

Cuando la pagina no detecta ningun idioma, me tira error de los codigos :O

Alguien sabe como dejar un idioma defauld, por si el navegador por que uno navega no tiene idioma predeterminado ?

o que mande a alguna pagina para elegir el idioma ?

Alguna ayuda ?

Gracias por la mil ayuda que me han dado y me han brindado, lo agradesco un monton ^^

Última edición por Chicoblog; 12/07/2007 a las 18:16
  #27 (permalink)  
Antiguo 13/07/2007, 15:15
 
Fecha de Ingreso: septiembre-2006
Mensajes: 29
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Hola,

Si la página no detecta idioma, el código intenta incluir un archivo ".php" (si es que lo usas tal cual).

Para usar un idioma por default, verifica que se haya seteado $idioma y si no es así, asignale el que tu quieres (o redirecciona a otra página, donde preguntas el idioma y lo guardas en una variable de sesión, o en el profile del usuario o en donde quieras. Con la idea de saber cual es su 'idioma preferido').

Estimado, dele vueltas al asunto y va a ver que se está ahogando en un vaso de agua.

Saludos
  #28 (permalink)  
Antiguo 13/07/2007, 16:44
 
Fecha de Ingreso: julio-2007
Ubicación: Por ahi...
Mensajes: 84
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: ¿Como hacer pagina web Multi-idioma?

Jajajajajaja, me da risa xP

AHora hace un rato vi la FAQ de PHP y hay como minimo sus 4 formas de hacer la pagina Multiidioma xP

Si que para el que busca Pagina multiidioma hay como unas 3 o 4 formas e hacerla Multiidioma xP

y aqui hay otra ^^

Saludos y mil gracias, se los agradesco ^^

Cualquier cosa me avisan ^^

Saludos y muchas gracias ^^
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




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