Précédent
- 1
- 2
Oui j'ai corrigé tout ça, le ; et le elseif (elseif c'est ma faute dsl).
Là il affiche la langue principale mais me déconnecte toujours lorsque je change la langue.
Fichier langue.php
Lien pour changer la langue :
administration.monsite.net/index.php?lang=en
Là il affiche la langue principale mais me déconnecte toujours lorsque je change la langue.
Fichier langue.php
<?php
if(isset($HTTP_COOKIE_VARS['lang'])) {$lang = $HTTP_COOKIE_VARS['lang'];} else {$lang = substr($HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'],0,2); }
$lang = $_GET['lang'];
if(empty($lang)){include('langues/fr-lang.php');}
elseif($lang='en'){include('langues/en-lang.php');}
elseif($lang='ar'){include('langues/ar-lang.php');}
$expire = 365*24*3600;
setcookie("lang", $lang, time() + $expire);
?>
Lien pour changer la langue :
administration.monsite.net/index.php?lang=en
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est ce que j'ai compris du tuto sur phpdebutant, c'est que si j'ai besoin de traduire, je met la page que je veux donc celle qui se prends en standard, mon index.php et y ajoute ?lang=en
Je penses que si ca ne fonctionnait pas, il n'afficherait pas le français même. Ce que je fais faire, c'est ajouter la langue à la page du login pour tester.
Je te préviens dans quelques minutes du changement
Je penses que si ca ne fonctionnait pas, il n'afficherait pas le français même. Ce que je fais faire, c'est ajouter la langue à la page du login pour tester.
Je te préviens dans quelques minutes du changement
Oups... j'avais oublié que je dois être connecté à ma session pour qu'il prenne effet.
J'ai eu beaucoup d'erreurs, j'ai dû annuler l'idée :D
J'ai eu beaucoup d'erreurs, j'ai dû annuler l'idée :D
C'est resolu a part entier !
Voilà le résultat final. Seulement lorsque je clique sur la langue, il traduit comme je le souhaite la page d'index. Une fois sorti de l'index, sur n'importe qu'elle autre page, il revient à la langue du serveur HTTP_ACCEPT_LANGUAGE
Donc résolu à 50%, merci de m'aider pour la continuité !
<?php
if(isset($_GET['lang'])){$lang =$_GET['lang'];}else{
if(isset($_COOKIE['lang'])) {$lang = $_COOKIE['lang'];} else {$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'],0,2); }
}
if ($lang=='fr') {include('langues/fr-lang.php');}
elseif ($lang=='en') {include('langues/en-lang.php');}
elseif ($lang=='ar') {include('langues/ar-lang.php');}
$expire = 365*24*3600;
setcookie("lang", $lang, time() + $expire);
?>
Voilà le résultat final. Seulement lorsque je clique sur la langue, il traduit comme je le souhaite la page d'index. Une fois sorti de l'index, sur n'importe qu'elle autre page, il revient à la langue du serveur HTTP_ACCEPT_LANGUAGE
Donc résolu à 50%, merci de m'aider pour la continuité !
je vais te donner peut etre une solution , je sais pas si elle te conviendra.
pour appeller une page , il demande toujours ton index.php?langue=fr j'imagine.
moi je dirai de creer en fait une session, qui garderait en memoire la langue choisie par l'utilisateur.
on considere que la langue par defaut est francais et que je vais la changer en anglais.
en DEBUT de page
<?php
session_start();
?>
celui ci peut etre placé a l'endroit du choix
<?php
$_SESSION['langue'] = $lang; ($lang a une valeur fr, en ou ar je rappelle)
?>
et donc la t'aura qu'a le rappeller avec des if , elseif ou autres, sauf qu'a la place du $lang tu mets $_SESSION['langue']
voila essaie et puis on verra si ca marche ;)
pour appeller une page , il demande toujours ton index.php?langue=fr j'imagine.
moi je dirai de creer en fait une session, qui garderait en memoire la langue choisie par l'utilisateur.
on considere que la langue par defaut est francais et que je vais la changer en anglais.
en DEBUT de page
<?php
session_start();
?>
celui ci peut etre placé a l'endroit du choix
<?php
$_SESSION['langue'] = $lang; ($lang a une valeur fr, en ou ar je rappelle)
?>
et donc la t'aura qu'a le rappeller avec des if , elseif ou autres, sauf qu'a la place du $lang tu mets $_SESSION['langue']
voila essaie et puis on verra si ca marche ;)
Précédent
- 1
- 2