Foros del Web » Creando para Internet » Diseño web »

Pagina multidioma

Estas en el tema de Pagina multidioma en el foro de Diseño web en Foros del Web. Hola mi problema.... para hacer una pagina multidioma trendre que hacer una pagina por cada idioma que aiga ?????...
  #1 (permalink)  
Antiguo 10/04/2011, 19:00
Avatar de luismercado0209  
Fecha de Ingreso: abril-2011
Mensajes: 101
Antigüedad: 6 años, 8 meses
Puntos: 4
Pregunta Pagina multidioma

Hola mi problema.... para hacer una pagina multidioma trendre que hacer una pagina por cada idioma que aiga ?????
  #2 (permalink)  
Antiguo 10/04/2011, 20:06
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.108
Antigüedad: 7 años, 7 meses
Puntos: 66
Respuesta: Pagina multidioma

debes de rellenar los textos de las webs desde una base de datos.

en la base de datos tendrias una tabla con todos los idiomas en vertical y todos los textos posibles en la web en horizontal para hacernos una idea

y segun que idioma cojerias los textos que correspondiesen

sabes de php y bases de datos?
  #3 (permalink)  
Antiguo 10/04/2011, 20:16
 
Fecha de Ingreso: abril-2011
Mensajes: 54
Antigüedad: 6 años, 8 meses
Puntos: 4
Respuesta: Pagina multidioma

Sale mejor usar las herramientas de Google Translate.
  #4 (permalink)  
Antiguo 10/04/2011, 20:21
Avatar de juanito1712  
Fecha de Ingreso: mayo-2010
Ubicación: Valencia
Mensajes: 1.108
Antigüedad: 7 años, 7 meses
Puntos: 66
Respuesta: Pagina multidioma

oye pues si, es otra opción, igual esa hasta le ajusta mejor
  #5 (permalink)  
Antiguo 10/04/2011, 20:26
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 8 años
Puntos: 16
Respuesta: Pagina multidioma

Hola.

Otra opción es utilizar un mismo array para cada idioma, divididos en 2 archivos diferentes y, definido por una variable de sesión php, mostrar uno u otro.

Un ejemplo puede ser el siguiente:

Español (es.php)
Código PHP:
<?php
    $lang 
= array();
    
$lang['idioma'] = 'Español';
    
    
$lang['menu_inicio'] = 'Inicio';
    
$lang['menu_servicios'] = 'Servicios';
    
$lang['menu_servicios_instalaciones'] = 'Instalaciones';
    
$lang['menu_servicios_plano'] = 'Plano';
?>
Inglés (en.php)
Código PHP:
<?php
    $lang 
= array();
    
$lang['idioma'] = 'English';
    
    
$lang['menu_inicio'] = 'Home';
    
$lang['menu_servicios'] = 'Services';
    
$lang['menu_servicios_instalaciones'] = 'Facilities';
    
$lang['menu_servicios_plano'] = 'Map';
?>
Y lo controlas por una variable de sesión en el principio de cada página de esta manera:
Código PHP:
<?php
    session_start
();
    if( !
$_SESSION['lang'] ){ $_SESSION['lang'] = 'es'; }
    
$root $_SERVER['DOCUMENT_ROOT'];
    include(
$root.'/languages/'.$_SESSION['lang'].'.php');
?>
Luego, donde vaya el texto correspondiente, utilizas el array <?php echo $lang['menu_inicio']; ?> y, según la variable de sesión se mostrará en un idioma u otro. De esta manera ahorras el uso de una base de datos y, bueno, para gustos. A mi me es más fácil tener los lenguajes en un array divido en 2 archivos. Creo que es más útil.


Saludos.
  #6 (permalink)  
Antiguo 11/04/2011, 08:38
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1.241
Antigüedad: 7 años
Puntos: 73
Respuesta: Pagina multidioma

Mejor que ese array
Código PHP:
Ver original
  1. <?php
  2.     $lang = array();
  3.     $lang['idioma'] = 'Español';
  4.    
  5.     $lang['menu_inicio'] = 'Inicio';
  6.     $lang['menu_servicios'] = 'Servicios';
  7.     $lang['menu_servicios_instalaciones'] = 'Instalaciones';
  8.     $lang['menu_servicios_plano'] = 'Plano';
  9. ?>
yo usaría este:
Código PHP:
Ver original
  1. <?php
  2. $lang = array(
  3.     "Contactas"             => "Contact",
  4.     "Mapas"                   => "Maps",
  5.     "Enviar formulario"   => "Send form",
  6. );
  7. ?>

Así ahorras código. Que en un idioma con 20.000 frases, a la hora de procesar el servidor, se nota.
__________________
:)
  #7 (permalink)  
Antiguo 11/04/2011, 10:17
Avatar de uikekarallo  
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 8 años
Puntos: 16
Respuesta: Pagina multidioma

Bueno, sí, es el mismo ejemplo optimizado.
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 22:33.