$lg = (isset($_SESSION['lang']) ? $_SESSION['lang'] : 'com');
header("Location: http://www.example. .$lg);
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.
c'était un exemple, (genre langue préférer du client),Si la langue n'est pas dans session...
un site par langue ? serveur différent ? virtual directory ?
if(!empty($_COOKIE['lang']))$lang=$_COOKIE['lang'];
if(!empty($_GET['lang']))$lang=$_GET['lang'];
if(!empty($lang) && ($lang=='eng' || $lang=='fr' || $lang=='esp')){
include('lang-'.$lang.'.php');
setcookie('lang',$lang,time()+3600*25*365,'/');
}else include('lang-eng.php');
// ajout du code de Dunbar
$lang = (isset($_SESSION['lang']) ? $_SESSION['lang'] : 'com');
header("Location: http://www.example. .$lg);
par contre comment coder les autre extensions ?
Salut zesLa solution de dubar,
Oui effectivementqu’extrêmement dépouillée
<?php
/**
* Exemple en partant de la demande.
* @www.example.com
* @www.example.fr
* @www.example.it
* @www.example.es
* Donc le choix des langues / com, fr, it, es
*/
session_start();
//Lien GET qui permet de choisir la langue.
echo '<a href="'.$_SERVER['PHP_SELF'].'?&lang=fr">FR</a> | <a href="'.$_SERVER['PHP_SELF'].'?&lang=es">ES</a> | <a href="'.$_SERVER['PHP_SELF'].'?&lang=it">IT</a> | <a href="'.$_SERVER['PHP_SELF'].'?&lang=com">EN</a>';
/**
* Vérification qu'un cookie existe.
*/
if(iSset($_COOKIE['lang']))
{
//-->Si il existe on attribue sa valeur a la variable de SESSION
$_SESSION['lang'] = $_COOKIE['lang'];
}
elseif(iSset($_GET['lang']))//-->Si pas de cookie on vérifie si une valeur existe dans la variable GET
{
//-->Si elle existe ont attribue la valeur a la variable de SESSION
$_SESSION['lang'] = $_GET['lang'];
}
else
{
//Langue par default.
$_SESSION['lang'] = 'com';
}
//-->Ont verifie si il existe une SESSION['lang'] dans le cas contraire ont attribue une valeur par defaut.
$lang = (isset($_SESSION['lang']) ? $_SESSION['lang'] : 'com');
//-->Redirection vers la page example.$lang
header ("Location: http://www.example. . $lang);
?>
Attention un " disparaît dans le header ??? header ("Location: http://www.example. . $lang);
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.