Bonjour,
Sur mon site en espagnol, la langue par défaut, j'aimerai rajouter le FR et EN
Le site pointe sur une traduction include/language/espagnol.php
J'ai créé 2 autres fichiers de traduction "english.php et french.php)
Sur les codes que j'ai mis en index, le site se traduit bien quand on clic sur les drapeaux du header correspondant aux langues.
Cependant dès qu'on clic sur un lien de l'index, la page suivante se remet par défaut en espagnol.
N'etant vraiment pas un pro je pense avoir une erreur sur le code, ou est-ce que je me suis planté ?
Quelqu'un peut'il m'aider ?
Voici mes codes :
index.php
dans le <body>
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88 <?php // si langue déclarée par cookie et qu'il ny a pas de requete // pour le choix de la langue alors on choisit le cookie if (isset ($_COOKIE['CHOIXlang']) && $_GET['langue'] != 'es' && $_GET['langue'] != 'fr') { $langue = $_COOKIE['CHOIXlang']; } else if (isset ($_COOKIE['CHOIXlang']) && $_GET['langue'] != 'fr' && $_GET['langue'] != 'en') { $langue = $_COOKIE['CHOIXlang']; } else if (isset ($_COOKIE['CHOIXlang']) && $_GET['langue'] != 'en' && $_GET['langue'] != 'es') { $langue = $_COOKIE['CHOIXlang']; } // le choix de la langue est déclaré par url else if ($_GET['langue'] == 'es' || $_GET['langue'] == 'en') { $langue = $_GET['langue']; set_cookie($langue); } else if ($_GET['langue'] == 'es' || $_GET['langue'] == 'fr') { $langue = $_GET['langue']; set_cookie($langue); } else if ($_GET['langue'] == 'en' || $_GET['langue'] == 'es') { $langue = $_GET['langue']; set_cookie($langue); } else if ($_GET['langue'] == 'en' || $_GET['langue'] == 'fr') { $langue = $_GET['langue']; set_cookie($langue); } else if ($_GET['langue'] == 'fr' || $_GET['langue'] == 'es') { $langue = $_GET['langue']; set_cookie($langue); } else if ($_GET['langue'] == 'fr' || $_GET['langue'] == 'en') { $langue = $_GET['langue']; set_cookie($langue); } // si aucune langue n'est déclarée on tente de reconnaitre // la langue par défaut du navigateur else { $langue = substr($HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'],0,2); set_cookie($langue); } function set_cookie($langue) { //définition de la durée du cookie (1 an) $expire = 365*24*3600; //enregistrement du cookie au nom de CHOIXlang + détection si erreur if (setcookie("CHOIXlang", $langue, time() + $expire) != TRUE) { // echo 'El cookie no foncionna<br />'; } else { setcookie("CHOIXlang", $langue, time() + $expire); // echo 'El cookie foncionna<br />'; } } ?>
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <?php // affichage de la bonne langue // si le cookie vaut 'es' ou si la requete vaut 'es', // on inclut le fichier espagnol.php if ($_GET['langue'] == "es" || $langue == "es") { include('includes/language/espagnol.php'); } // affichage de la bonne langue // si le cookie vaut 'fr' ou si la requete vaut 'fr', // on inclut le fichier french.php elseif ($_GET['langue'] == "fr" || $langue == "fr") { include('includes/language/french.php'); } // affichage de la bonne langue // si le cookie vaut 'en' ou si la requete vaut 'en', // on inclut le fichier english.php elseif ($_GET['langue'] == "en" || $langue == "en") { include('includes/language/english.php'); } ?>
Lien des drapeaux
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 <?php if(empty($_SESSION['connect'])) { if($param_gen['actif_acc'] == 2 || $param_gen['actif_acc'] == 3) echo '<li class="li_top_header"> <a href="?langue=es" title="Español"><img src="images/flag_es.gif" height="14" alt="Español" /></a> <a href="?langue=fr" title="Français"><img src="images/flag_fr.gif" height="14" alt="Français" /></a> <a href="?langue=en" title="English"><img src="images/flag_en.gif" height="14" alt="English" /></a> <img src="images/top_header_fl.png" alt="" /><a href="acc_conn.php?type=1">'. $language['lien_compte'] .'</a></li>'; if($param_gen['actif_acc'] > 1) echo '<li class="li_top_header"><img src="images/top_header_fl.png" alt="" /><a href="acc_conn.php?type=2">'. $language['lien_compte_pro'] .'</a></li>'; } else echo '<a href="" title="Español"><img src="images/flag_es.gif" height="14" alt="Español" /></a> <li class="li_top_header"><img src="images/top_header_fl.png" alt="" /><a href="acc_bord.php">'. $language['compte_lien_bord1'] .'</a></li><li class="li_top_header"><img src="images/top_header_fl.png" alt="" /><a href="acc_logout.php">'. $language['compte_lien_bord5'] .'</a></li>'; if($param_gen['actif_acc'] > 1 && $param_gen['active_bout'] == 1) echo '<li class="li_top_header"><img src="images/top_header_fl.png" alt="" /><a href="boutiques_search.php">'. $language['lien_boutiques'] .'</a></li>'; ?>
Partager