Tema: Combo box
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/08/2012, 05:37
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: Combo box

creo que no es algo facil esto de usar varios idiomas sin multiplicar los documentos (no estas solo, yo hace años que estoy empezando); hacerlo con solo html y javascript no creo que sea factible (ok, con javascript puedes generar contenido y eso pero tendrias que cargar todos los idiomas al cliente), lo mejor es respaldarte con algun lenguaje de servidor como php

la idea es la siguiente: tienes un select tal como has propuesto, el evento es el onChange que lo que hara es simplemente recargar la pagina actual buscando una clave-valor que indique el idioma, recogiendo el codigo de idioma (o uno por defecto), cargar el archivo necesario con los bloques de texto, y escribir los propios bloques; como se da el caso que los bloques serán estaticos no hace falta usar variables sino que puedes definirlos; añado una sugerencia con lo mas básico:

Código:
<?php
$default_lid = "q";
include_once(((isset($_GET['lid']))? $_GET['lid'] : $default_lid). ".php");
?>
<html>
	<head></head>
	<body>
		<select onChange="javascript:location.href = '?lid='+this.value;">
			<option>Seleccione</option>
			<option value="q">Idioma Q</option>
			<option value="w">Idioma W</option>
		</select><br>
		<h1><?php echo TITULO; ?></h1>
		<h3><?php echo CONTENIDO; ?></h3>
		<h5><?php echo PPAG; ?></h5>
	</body>
</html>
los archivos de bloques de texto (en este caso q.php y w.php) contienen las definiciones en cada idioma, tal como los siguientes:

Código:
//archivo q.php
<?php
define(TITULO, "Encabezado");
define(CONTENIDO, "Este es el contenido");
define(PPAG, "2012 tal.com");
?>


//archivo w.php
<?php
define(TITULO, "Header");
define(CONTENIDO, "Thats the content text");
define(PPAG, "2012 whatever.com");
?>
ten en cuenta que para hacer una web completa tendras que usar un monton (por así decirlo) de bloques de texto (ve el caso de esta misma web, cada item de menú será un bloque, cada tooltip otro bloque, los titulos, botones, y mil etceteras mas)

esto solo es una idea 'a la antigua', seguramente por ahí podras encontrar herramientas para php mas completas o al menos mas agradecidas visualmente

suerte con ello
vosk