|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bonjour,
voila je cherche à developper un site multi-lang en php. J'ai donc un script si dessous qui en fonction de la langue va orienter un vers un fichier contenant les traductions dans la langue choisie . Ce script utilise des cookies .... Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
Tu pouvais aussi poser ta question dans le post de Linon un peu plus bas et partagez ton experience avec lui.
Sinon pour ta question de lien à mettre il faut que tu l'envoi vers une page php ou tu recup la langue ( en GET par exemple). Ensuite tu pose le cookie avec setcookie Voilà Pierre PS : plutôt que HTTp_COOKIE_VAR utilise $_COOKIE c'est plus court |
|
|
00
|
|
|
#3 | ||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
voilà j'ai mis mon code à jour
j'ai deux lien pour choisir la lang et acceder à ma page <a href="page1.php?lang=en">anglais</a><br /> <a href="page1.php?lang=fr">francais</a><br /> cela appel le script ci-dessous (qui choisi la langue) et determine le ficher de traduction à utiliser. ....mais j'ai une erreur ....vous avez une idée ? Code :
Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\ser\multilang\decide-lang.php:1) in c:\program files\easyphp1-8\www\ser\multilang\decide-lang.php on line 22 Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
L'envoi d'un cookie vers le poste de l'utilisateur ne peu se faire que si celui-ci n'a reçu aucune donnée de la part du script.
Verifies que tu n'as pas laissé un echo, du html, des espaces. Pour etre sur <? doivent etre les premiers caractères de ta page.
__________________
Pierre 1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune. 2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers 3. Un code rapide c'est bien, un code maintenable c'est mieux ... Why was the font tag an orphan ? Because it didn't have a font-family. |
|
|
00
|
|
|
#5 | ||||||||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
j'avais effectivement un espace avant <?php.
Mais j'ai encore un pb....mon script ne marche pas du tout ! Le choix de la langue ne se fait pas .....c'est toujours en français meme quand je clique sur anglais ... je pense que le cookie ne s'initialise pas et qu'il prends la langue du navigateur ....une idée ? j'ai une page index avec les liens Code :
un script decide-lang Code :
Code :
Code :
|
||||||||
|
|
00
|
|
|
#6 | |||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Citation:
Sinon voila comment je te conseil de faire... .. . Code :
|
|||
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
ok merci beaucoup pour ces corrections !
ça fonctionne très bien. Je voudrais juste savoir maintenant quels liens je doit mettre lorsque je veux passer de page en page pour conserver la langue choisie initialement ? merci |
|
|
00
|
|
|
#8 | |||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#9 | ||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
y' aurai pas un moyen pour eviter de selectionner la langue à chaque page de faire le choix sur l'index et de récupérer la variable enregistrée dans le cookie pour les autres pages ?
je m'explique index: choix de la langue: Code :
Code :
<a href="page2.php?lang=.$_COOKIE['lang'].'"> |
||
|
|
00
|
|
|
#10 |
|
Membre émérite
![]() ![]() Inscription : novembre 2004 Messages : 735 ![]() |
Les cookies sont transmis de page en page sans que tu est besoin de t'en soucier.
Le premier post de kankrelune te donne clairement la méthode a utiliser. - Tu test le _GET['lang'] au cas ou l'utilisateur change de langue - Tu test le _COOKIE['lang'] pour recupere la langue - Si aucun des deux alors langue par défaut
__________________
Pierre 1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune. 2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers 3. Un code rapide c'est bien, un code maintenable c'est mieux ... Why was the font tag an orphan ? Because it didn't have a font-family. |
|
|
00
|
|
|
#11 | |||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Citation:
@ tchaOo° |
|||
|
|
00
|
|
|
#12 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
il y a un truc que je comprends pas:
1 je selectionne la langue sur l'index (anglais) 2 mon script enregistre la langue dans le cookie 3 j'arrive sur la page 1 je clique sur un lien vers la page 2 (<a href="page2.php">) (page2 qui contient : ) la page 2 devrait s'afficher en anglais non ? puisque le le fichier decide-lang devrait voir dans le cookie que la langue = en eh bien non ....elle s'affiche en francais ... il y a un probleme ??? je vois pas ... |
|
|
00
|
|
|
#13 | ||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
peux tu mettre
Code :
@ tchaOo° |
||
|
|
00
|
|
|
#14 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
resultat du tableau
je signale que lorsque je selectionne la langue sur l'index la page 1 s'affiche dans la langue choisie . lors du passage à la page 2 (avec un lien simple page2.php) ....la langue devient systematiquement le francais |
|
|
00
|
|
|
#15 |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Ton navigateur accepte les cookies au moins... .. ?
@ tchaOo° |
|
|
00
|
|
|
#16 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
oui....et pourtant ça a pas l'air de marcher
|
|
|
00
|
|
|
#17 |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
met
error_reporting(E_ALL); au début de ton fichier decide-lang.php puis retest... le cookie n'est pas écrit surement parce qu'il y a du contenu qui est envoyé en amont... .. . @ tchaOo° |
|
|
00
|
|
|
#18 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
je viens de le rajouter.....aucun changement...même comportement...c'est sensé produire un log d'erreur ?
|
|
|
00
|
|
|
#19 | |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Citation:
@ tchaOo° |
|
|
|
00
|
|
|
#20 | ||||||||||||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Voici mes codes:
index Code :
Code :
Code :
Code :
Code :
Code :
|
||||||||||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com