Bonjour
je reposte un message au sujet du probleme que je rencontre pour passer d'une page avec une variable javascript à une page avec une variable php contenant la valeur de la variable javascript.
J'ai testé plusieurs choses et j'ai maintenant plus d'éléments pour identifier le probleme
sur la premiere page (index.php) , on fournit une adresse (exemple : 75010, france). la fonction showadress calcule les coordonnées (latitude, longitude) et renvoie la valeur, qu'on transmet sur la page suivante (afficher.php) dans une variable php qu'on affiche
code de index.php :
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 <head> <title>Application Google Map</title> <script src="http://maps.google.com/maps?file=api&v=2.x&key=ABQIAAAAal_cd43vOKPQhNkPDkwHgBQSXE4ITa1YzwIbIoQt-CisjCLm8xTJhtTXHvXoMcij_eu3bNbEGnk_PA" type="text/javascript"></script> <style type="text/css"> </style> </head> <body style="margin: 0px; padding: 0px;"> <form action="afficher.php" method="post" onsubmit="document.getElementById('latLngStr').value=showAddress(address_rech.value);"> <input type="text" id="address_rech" name="address_rech" value="" > <input type=hidden id="latLngStr" name='latLngStr'> <input type="submit" id="submit" value="Localiser" /> </form> <div id="map" style="width: 400px; height: 300px"></div> <script type="text/javascript"> var geocoder = new GClientGeocoder(); function showAddress(address) { if (geocoder) { geocoder.getLatLng(address, function(point) { if (!point) { /* Si les coordonnées n'ont pas été trouvés */ alert("Impossible de localiser l'adresse :\n\n" + address); } else { var latLngStr = '(' + point.y + ', ' + point.x + ')'; var retour=latLngStr; return (retour); } }); } } </script> </body> </html>
code de afficher.php
le probleme c'est que la fonction showadress renvoie la valeur "undefined" ;
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 <html> <body> <?php if(isset($_POST['latLngStr'])) { $calcul=$_POST['latLngStr']; } else { $calcul="pas de valeur"; } echo "$calcul<br>"; ?> </body> </html>
pourtant, si je met alert (retour) au lieu de return (retour) dans la fonction, j'ai bien une alerte javascript avec les coordonnées souhaitées...
alors ou est le pb? ca fait plus de 3 jours que je m'arrache les cheveux la dessus..
Merci pour votre aide
Partager