Bonjour à tous,

J'ai crée un script php pour internationaliser mon site :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<?php
session_start();
if (!$_SESSION[USER_LANGUAGE]) SetLang(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2));
include "resource/language/$_SESSION[USER_LANGUAGE].php";
?>

Voici mes fonctions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
function setLang($p1){
    if(!in_array($p1, array('fr', 'en'))) $p1 = "en";
    $_SESSION['USER_LANGUAGE'] = $p1;
}
function Location ($p1) {
if (!$p1) $p1 = $_SERVER['HTTP_REFERER'];
exit(header('Location: '.$p1));
}

J'ai les fichiers en.php et fr.php avec les traductions. Ensuite, je veux créer des liens pour changer de langue, j'ai donc crée ces button :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<div id="langues">
<button name='fr' type="button">Français</button>| <button name='en' type="button">English</button>
</div>

Et j'ai modifié mon script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
session_start();
if (!$_SESSION[USER_LANGUAGE]) SetLang(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2));
include "resource/language/$_SESSION[USER_LANGUAGE].php";
 
if (isset($_POST['fr'])) {
SetLang('fr');
Location('/');
}
if (isset($_POST['en'])) {
SetLang('en');
Location('/');
}
?>
Mais, lorsque je clique rien ne change. Quel est donc le problème ? Comment rediriger l'utilisateur vers la langue désirée ? Existe-il des façons plus simples d'internationaliser mon site ? Car je suis vraiment bloqué sur cette notion !

Merci d'avance !