par
ecumastor » 11 févr. 2016, 15:05
Bonjour,
Une question pour laquelle je ne parviens pas à trouver de réponse :
Point de départ : une liste de latitudes, longitudes (issues d'une base de données MySql), et pour chaque ligne, un lien que je nommerai "J'y vais".
L'idée est de proposer pour les téléphones, l'occasion de se rendre à un point via GoogleMap.
Mon code, qui ne fonctionne pas pour le moment :
Code : Tout sélectionner
<?
function geolocaliser($geolocalisation){
?>
<script type="text/javascript">
function getPosition(position){
var infoposition = position.coords.latitude + "," + position.coords.longitude ;
document.form_itineraire.saddr.value=infoposition ;
//document.forms["form_itineraire"].submit();
}
function myPosition(destination){
document.form_itineraire.daddr.value=destination ;
navigator.geolocation.getCurrentPosition(getPosition);
}
</script>
<form style="display:inline;" name="form_itineraire" id="form_itineraire" action="http://maps.google.com/maps" method="get" target="_blank">
<input type="hidden" name="saddr" value=""/>
<input type="hidden" name="daddr" value=""/>
<input type="image" src='images/geolocaliser.png' class="bouton" value="geolocaliser" onClick="javascript:myPosition('<? echo $geolocalisation ?>')"></input>
</form>
<?
}
?>
<?
// ... je passe ici sur la connexion à la base de données et j'en arrive à la boucle ....
while($data=mysql_fetch_array($sql)){
$latitude=$data['latitude'];
$longitude=$data['longitude'];
$position_cible="$latitude".","."$longitude";
$position_cible=htmlentities($position_cible);
geolocaliser($position_cible);
}
Cette fonction, geolocaliser(), fonctionne si je ne passe pas par une boucle. Ici, dans la boucle, les coordonnées ne passent pas.
Un formulaire n'est peut-être pas la meilleure solution. En connaissez-vous une autre ?
Merci.
Bonjour,
Une question pour laquelle je ne parviens pas à trouver de réponse :
Point de départ : une liste de latitudes, longitudes (issues d'une base de données MySql), et pour chaque ligne, un lien que je nommerai "J'y vais".
L'idée est de proposer pour les téléphones, l'occasion de se rendre à un point via GoogleMap.
Mon code, qui ne fonctionne pas pour le moment :
[code]
<?
function geolocaliser($geolocalisation){
?>
<script type="text/javascript">
function getPosition(position){
var infoposition = position.coords.latitude + "," + position.coords.longitude ;
document.form_itineraire.saddr.value=infoposition ;
//document.forms["form_itineraire"].submit();
}
function myPosition(destination){
document.form_itineraire.daddr.value=destination ;
navigator.geolocation.getCurrentPosition(getPosition);
}
</script>
<form style="display:inline;" name="form_itineraire" id="form_itineraire" action="http://maps.google.com/maps" method="get" target="_blank">
<input type="hidden" name="saddr" value=""/>
<input type="hidden" name="daddr" value=""/>
<input type="image" src='images/geolocaliser.png' class="bouton" value="geolocaliser" onClick="javascript:myPosition('<? echo $geolocalisation ?>')"></input>
</form>
<?
}
?>
<?
// ... je passe ici sur la connexion à la base de données et j'en arrive à la boucle ....
while($data=mysql_fetch_array($sql)){
$latitude=$data['latitude'];
$longitude=$data['longitude'];
$position_cible="$latitude".","."$longitude";
$position_cible=htmlentities($position_cible);
geolocaliser($position_cible);
}
[/code]
Cette fonction, geolocaliser(), fonctionne si je ne passe pas par une boucle. Ici, dans la boucle, les coordonnées ne passent pas.
Un formulaire n'est peut-être pas la meilleure solution. En connaissez-vous une autre ?
Merci.