Bonjour
Voilà je me lance un peu dans ajax et j'ai un peu de mal avec !
J'ai créé un site multilangue en utilisant les sessions, sur celui-ci j'ai une page dans laquelle j'ai une carte de France mappé et j'utilise un code ajax pour faire aparaitre un texte chaque foi qu'un click est fait sur une zone réactive !
Jusqu'a la tout fonctionne très bien mais maintenant il faut que j'arrive a le faire parlé dans les autres langues et LA je ne vois pas du tout comment faire !
Le code de la page en question :
J'ai bien entendu reduit le code !!
Code : 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 <?php require("includes/langue.php"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>Elena Deudero Ibiza</title> <meta name="keywords" content="" /> <meta name="description" content="" /> <link href="css/styles.css" rel="stylesheet" type="text/css" media="screen" /> <script type="text/javascript" src="js/ajaxMap.js"></script> </head> <body> <div id="Global"> <!-- start header --> <div id="Header"> <div id="Header_ban"></div> <span style="margin-left:10px;"><a href="?lang=fr"><img src="images/lang/fr.jpg" title="Français" border="0" /></a> </span> <span style="margin-left:10px;"><a href="?lang=en"><img src="images/lang/gb.jpg" title="English" border="0" /></a> </span> <span style="margin-left:10px;"><a href="?lang=es"><img src="images/lang/es.jpg" title="Español" border="0" /></a></span> </span> <?php include ('includes/menu.php');?> </div> <!-- end header --> <!-- start page --> <div id="Page"> <!-- start content --> <div id="Contenu"> <div class="Texte"> <div class="Haut"></div> <div class="Millieu"> <p align="center"><h1><?php echo TXT_BOUTIK_TITRE; ?></h1></p> <p> </p> <!--<p align="center">--> <?php //include_once('map.php');?> <!---------------------------------------------------------------------------------------------------------------------------> <table width="100%"> <tr> <td width="370px" valign="top"> <div id="zone"></div> </td> <td width="516px"> <div align="center"> <img border="0" usemap="#Map" src="images/carte-de-france.gif"/> <map name="Map" id="Map"> <area shape="poly" coords="316,468,304,462,298,465,287,457,257,457,250,468,262,472,263,493,276,496,278,489,295,489,301,485,309,491,311,477,317,470" href="#" ONCLICK="submitTEST()" alt="Aude" /> </map> </div> </td> </tr> </table> <!---------------------------------------------------------------------------------------------------------------------------> <!--</p>--> </div> <div class="Bas"></div> </div> </div> <!-- end content --> <div style="clear: both;"> </div> </div> <!-- end page --> </div> <?php include ('includes/footer.php');?> </body> </html>
Ensuite mon fichier langue :
un extrait d'un fichier lang :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <?php session_start(); if ((isset($_GET['lang']) && !empty($_GET['lang'])) || (isset($_COOKIE['lang']) && !empty($_COOKIE['lang']))) { $_SESSION['lang'] = $_GET['lang']; setcookie("lang", $_SESSION['lang'], time() + (3600 * 24 * 365)); } // Langue par défaut if (empty($_SESSION['lang'])) $_SESSION['lang'] = 'fr'; include('lang/'.$_SESSION['lang'].'_lang.php'); ?>
et pour finir mon fichier AJAX :
Code : 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 <?php /******************************************************************* Fichier de langue FRANCAIS *******************************************************************/ //--------------------------------------------------------- // menu.php //--------------------------------------------------------- define('TXT_MENU_ACCUEIL', 'Accueil'); define('TXT_MENU_VENTE', 'Vente privée'); define('TXT_MENU_FRANCHISE', 'Franchise'); define('TXT_MENU_ESHOP', 'e.shop'); define('TXT_MENU_CONTACT', 'Contact'); //--------------------------------------------------------- // footer.php //--------------------------------------------------------- define('TXT_FOOTER_MENTIONS', 'Mentions légales'); define('TXT_FOOTER_COPYRIGHT', 'Nom du site © 2011 Tous droits réservés'); define('TXT_FOOTER_POWERED', 'Propulsé par '); //--------------------------------------------------------- // index.php //--------------------------------------------------------- define('TXT_ACCUEIL_INDEX', 'Bienvenue'); ?>
Par contre je souhaiterai garder cette manière de travail pour les langues si possible !
Code : 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 // JavaScript Document function submitTEST() { var req = null; document.getElementById("zone").innerHTML = "Started..."; if (window.XMLHttpRequest) { req = new XMLHttpRequest(); if (req.overrideMimeType) { req.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } req.onreadystatechange = function() { document.getElementById("zone").innerHTML = "Wait server..."; if(req.readyState == 4) { if(req.status == 200) { document.getElementById("zone").innerHTML = "" + req.responseText; } else { document.getElementById("zone").innerHTML="Error: returned status code " + req.status + " " + req.statusText; } } }; req.open("GET", "ajaxMap.php", true); req.send(null); }
Merci
Partager