Haber si me podéis echar un cable. Lo que quiero hacer es que PHP detecte el idioma e incluya sus respectivos textos. Pero si el usuario cambia de idioma a través de los botones, quiero que se cambie y que me lo pille aunque cambie de página. Quiero decir, que si el usuario elige el idioma a través de los botones, este tiene prioridad que el idioma que el que detecte del navegador. Este es el código que estoy utilizando:
Código PHP:
<?php
session_start();
if(!isset($_SESSION['idioma']) || !empty($_GET['lang'])){
$lang=$_GET['lang'];
switch ($lang){
case "es":
require("includes/idioma.es.php");
break;
case "en":
require("includes/idioma.en.php");
break;
}
} else {
$_SESSION['idioma']=$HTTP_SERVER_VARS["HTTP_ACCEPT_LANGUAGE"];
switch ($_SESSION['idioma']) {
case "es":
require("includes/idioma.es.php");
break;
case "en":
require("includes/idioma.en.php");
break;
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<body>
<a href="idioma3.php?lang=es">Español</a><br />
<a href="idioma3.php?lang=en">English</a><br />
</body>
</html>
Pero me da el siguiente error:
Notice: Undefined index: lang in C:\www\idioma3.php on line 4
Al cargar la página, pero una vez que le paso la variable
lang a través de los botones ya no me lo da. Mis preguntas serian:¿Si voy bien encaminado? y ¿Como soluciono el error?
Saludos y gracias