Web multiidioma

Jesuso
15 de Octubre del 2003
Hola chicos, tengo un comercio electrnico y me gustara saber como consigo ponerla en varios idiomas, haba probado con includes dinmicos, estilo:
if Session("Idioma") = "ES" Then
<!--#INCLUDE FILE='IDIOMA_ES.ASP'-->
Elseif Session("Idioma") = "EN" Then
<!--#INCLUDE FILE='IDIOMA_EN.ASP'-->
End if
En cada fichero de idioma poseo las mismas variables con los mismos nombres pero en su idioma, con lo que pretenda en la web principal simplemente llamar a esas variables que escribiran en el idioma que hubieran cargado, cual es mi sorpresa al ver que no se pueden hacer includes dinmicos, as que prob con el server.execute, pero ste no carga las variables para luego representarlas en la web desde la que se le ha llamado. As que se me han abierto ahora dos vias completamente distintas, bien lo hago por BBDD, lo cual me parece que cargara la aplicacin, si debo cargar todas las variables desde ella, o bien duplico la aplicacion variando la raz tal que as:
virtual/es/...
virtual/en/...
¿ Podrais decirme cual es la manera en la que lo hace todo el mundo para que sea mas efectivo, por favor ? Gracias

huanan
15 de Octubre del 2003
Te doy una idea que no es mia, la descubr analizando un codigo que vi por internet, y que he adaptado:

Se trata de crear tantos documentos XML como idiomas queramos, por ejemplo: ES.XML

<?xml version="1.0" encoding="Unicode" ?>
<constantes>
<idioma name="ES">
<TITULO_1>Bienvenido</TITULO_1>
<TITULO_2>Amigo</TITULO_2>
</idioma>
</constantes>

Despues solo tenemos que cargarlo al principio de la aplicacion ASP, osea:

idioma="ES"
xmlDoc = idioma + ".XML"

'Cargamos el XML
Set oxml = CreateObject("Microsoft.XMLDOM")
oxml.Async = False
oxml.Load(Server.MapPath(xmlDoc))
Set XMLDoc = oxml.documentElement
Set oNode = XMLDoc.selectSingleNode("//constantes/idioma")
for each item in oNode.childNodes
session(item.nodename)=item.text
next
Set oxml = nothing
Set oNode = nothing


Todo queda almacenado en SESSION, solo hay que llamar a esta rutina al principio y, por supuesto, cada vez que el usuario cambie de idioma, para cargar el archivo XX.XML
Evidentemente, esto puede servir para mas cosas que no solo idiomas !!!!

huanan