Bruno
2007-03-08 20:02:15 UTC
Bonjour,
Je débute en Php , j'ai trouvé un moyen pour faire un site multi
lingue, cependant il ne fonctionne qu'avec firefox et non IE ?? ça
pose problème !!!
que puis je faire ?
au début de chaque page j'ai :
<?php
$page="lapageencours.php";
if(isset($_COOKIE['langue']))
{
if($_COOKIE['langue'] == 'fr')
{
require("langues/fr/$page");
}
elseif($_COOKIE['langue'] == 'en')
{
// Pour les anglais
require("langues/en/$page");
}
elseif($_COOKIE['langue'] == 'de')
{
// Pour les allemands
require("langues/de/$page");
}
elseif($_COOKIE['langue'] == 'it')
{
// Pour les italiens
require("langues/it/$page");
}
elseif($_COOKIE['langue'] == 'tr')
{
// Pour les turcs
require("langues/tr/$page");
}
else
{
// Au cas où le cookie de langue soit dans une autre langue que
celles proposées
require("langues/en/$page");
}
}
else
{
$langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$langue = $langue[0].$langue[1];
$date_expiration = time() + 2*24*3600;
setcookie('langue', $langue, $date_expiration);
if($langue == 'fr')
{
// Pour les navigateurs français
require("langues/fr/$page");
}
elseif($langue == 'en')
{
// Pour les anglais
require("langues/en/$page");
}
elseif($langue == 'de')
{
// Pour les allemands
require("langues/de/$page");
}
elseif($langue == 'it')
{
// Pour les italiens
require("langues/it/$page");
}
elseif($langue == 'tr')
{
// Pour les turcs
require("langues/tr/$page");
}
else
{
// Au cas où la langue soit dans une autre langue que celles
proposées
require("langues/en/$page");
}
}
if($_GET['langue'] == 'fr')
{
$date_expiration = time() + 2*24*3600; // Un an !
setcookie('langue', 'fr', $date_expiration); // On enregistre le
cookie
header("location: $page"); // On lui remontre la meme page
}
elseif($_GET['langue'] == 'en')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'en', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'tr')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'tr', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'it')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'it', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'de')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'de', $date_expiration);
header("location: $page");
}
?>
et sur toutes les pages j'ai les drapeaux des pays pour avec un lien ?
langue=fr pour le français par exemple!
je ne comprends pas pourquoi ça marche sur firefox et pas sur IE, que
faut il faire pour y remédier, ça fait plusieurs jours que je tourne
en rond !!
Merci pour vos futures très bonnes réponses!!
Bruno
Je débute en Php , j'ai trouvé un moyen pour faire un site multi
lingue, cependant il ne fonctionne qu'avec firefox et non IE ?? ça
pose problème !!!
que puis je faire ?
au début de chaque page j'ai :
<?php
$page="lapageencours.php";
if(isset($_COOKIE['langue']))
{
if($_COOKIE['langue'] == 'fr')
{
require("langues/fr/$page");
}
elseif($_COOKIE['langue'] == 'en')
{
// Pour les anglais
require("langues/en/$page");
}
elseif($_COOKIE['langue'] == 'de')
{
// Pour les allemands
require("langues/de/$page");
}
elseif($_COOKIE['langue'] == 'it')
{
// Pour les italiens
require("langues/it/$page");
}
elseif($_COOKIE['langue'] == 'tr')
{
// Pour les turcs
require("langues/tr/$page");
}
else
{
// Au cas où le cookie de langue soit dans une autre langue que
celles proposées
require("langues/en/$page");
}
}
else
{
$langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$langue = $langue[0].$langue[1];
$date_expiration = time() + 2*24*3600;
setcookie('langue', $langue, $date_expiration);
if($langue == 'fr')
{
// Pour les navigateurs français
require("langues/fr/$page");
}
elseif($langue == 'en')
{
// Pour les anglais
require("langues/en/$page");
}
elseif($langue == 'de')
{
// Pour les allemands
require("langues/de/$page");
}
elseif($langue == 'it')
{
// Pour les italiens
require("langues/it/$page");
}
elseif($langue == 'tr')
{
// Pour les turcs
require("langues/tr/$page");
}
else
{
// Au cas où la langue soit dans une autre langue que celles
proposées
require("langues/en/$page");
}
}
if($_GET['langue'] == 'fr')
{
$date_expiration = time() + 2*24*3600; // Un an !
setcookie('langue', 'fr', $date_expiration); // On enregistre le
cookie
header("location: $page"); // On lui remontre la meme page
}
elseif($_GET['langue'] == 'en')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'en', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'tr')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'tr', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'it')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'it', $date_expiration);
header("location: $page");
}
elseif($_GET['langue'] == 'de')
{
$date_expiration = time() + 2*24*3600;
setcookie('langue', 'de', $date_expiration);
header("location: $page");
}
?>
et sur toutes les pages j'ai les drapeaux des pays pour avec un lien ?
langue=fr pour le français par exemple!
je ne comprends pas pourquoi ça marche sur firefox et pas sur IE, que
faut il faire pour y remédier, ça fait plusieurs jours que je tourne
en rond !!
Merci pour vos futures très bonnes réponses!!
Bruno