tu idea es muy clara... solo te bastan otros retoques
idiomas.php Código PHP:
<?php
$lang = 'ES'; // defecto
if (isset($_GET['idioma']))
{
$lang = $_GET['idioma']; // OK
}
elseif (isset($_COOKIE['idioma']))
{ // recuperamos la galleta (si hay)
$lang = $_COOKIE['idioma'];
}
$idioma = "idiomas/$lang.php"; // por ejemplo
if (!is_file($idioma))
{ // siempre ten algo por defecto.... xD
$idioma = 'idiomas/ES.php';
$lang = 'ES';
// quiza debamos borrar la galleta
setcookie('idioma', null, time()-84000);
}
// guardamos la galleta?
if (!isset($_COOKIE['idioma']))
{
setcookie('idioma', $lang, time()+84000);
header('location: '.$_SERVER['REQUEST_URI']); // regresamos
}
// ahora si, cargamos las constantes...
include $idioma;
?>
ahora solo incluye el script
idiomas.php antes de todos tus demás códigos...