Cita:
Iniciado por red_robe ¿nadie? :(
Hola
red_robe, me parece que tu problema es más bien conceptual.
- Constante: Es un identificador cuyo valor no puede ser alterado durante la ejecución de un programa.
- Variable: Es una referencia a una localidad de memoria cuyo valor es conocido o desconocido y que puede ser alterado durante la ejecución de un programa.
Tu escenario:
- Estructura de control que asigna valores (if)
- Contenedores de valores (éstos valores son cambiados en tiempo de ejecución de acuerdo a tu estructura de control)
Simplemente a golpe de vista se ve que tienes que utilizar variables y no constantes.
Acerca del error:
Name redefined - Nombre redefinido
Para ASP clásico, el include es lo primero que el servidor interpretará, por lo tanto, si defines tus variables en cada archivo, lo que el servidor está leyendo es:
Código ASP:
Ver original'Español
Dim Bienvenido= "¡Bienvenido!"
'Inglés
Dim Bienvenido = "Welcome"
'Francés
Dim Bienvenido = "Accueil"
Esto claramente está mal pues no puedes definir el mismo nombre múltiples veces dentro de un archivo.
La solución
1. Crea un archivo donde definas todas tus variables en inclúyelo antes de tus otros includes, asegúrate que este sea incluído una sola vez:
Código ASP:
Ver originalDim Bienvenido
Dim QueGustoVerte
Dim HastaPronto
<!--#include file = "lang_variables.asp"-->
2. Debajo de este include puedes poner tu if con los demas includes de idiomas, éstos includes no deben dimensionar ninguna variable, solo deben asignar valores
'Archivo español
Bienvenido = "Bienvenido!"
'Archivo inglés
Bienvenido = "Welcome"
'Archivo francés
Bienvenido = "Accueil"
Al final tu estructura debería verse similar a:
Código ASP:
Ver original<!--#include file = "lang_variables.asp"-->
Select case idioma
case "es"
<!--#include file='lang_esp.asp'-->
case "en"
<!--#include file='lang_eng.asp'-->
case "fr"
<!--#include file='lang_fr.asp'-->
End Select
Y eso es todo