Lo que dice darksite está muy bien, aunque he de decir que me parecería mejor así el 1er script:
PHP Code:
$dir_idioma_default = "idioma/es.php";
$dir_idioma = "idioma/".$_GET["idioma"].".php";
if(file_exists($dir_idioma)) {
include("$dir_idioma");
} else {
include("dir_idioma_default");
}
Lo del 2do está bien, yo usaría arrays en vez de define, pero creo que es a gusto:
PHP Code:
$lang["welcome"] = "Bienvenido al sitio";
$lang["login"] = "Iniciar sesión";
$lang["logout"] = "Cerrar sesión";
Y así sucesivamente, luego, en la página, los pondrías así:
PHP Code:
<span><?=$lang["welcome"]?></span>
Saludos.