Bonsoir,
je développe actuellement un système permettant d'afficher une liste de communes dans un certain rayon à partir d'une commune donnée...
Voici le fichier php qui effectue cette opération avec pour exemple Avignon en point de départ :
Je me suis servi de ce site pour trouver la formule.
Voici ce que j'affiche :
N'y aurait-il pas une meilleure façon de l'écrire ? Car le calcul n'est pas cohérent (98.7576605344 <= 50)... Où est l'erreur ? :?
Merci de m'aiguiller s'il vous plaît
Modifié par Api1000 (28 Jul 2008 - 09:28)
je développe actuellement un système permettant d'afficher une liste de communes dans un certain rayon à partir d'une commune donnée...
Voici le fichier php qui effectue cette opération avec pour exemple Avignon en point de départ :
<?php
include('connect.php');
$ville = "Avignon";
$lat = 0.767072206;
$lng = 0.084066698;
$distances = 50;
$sql = "SELECT * FROM `villes` WHERE ".(((acos(sin(($lat*pi()/180)) * sin((LatitudeRadian*pi()/180)) + cos(($lat*pi()/180)) * cos((LatitudeRadian*pi()/180)) * cos((($lng - LongitudeRadian)*pi()/180))))*180/pi())*60*2.133)." <= ".$distances."";
$result = mysql_fetch_array(mysql_query($sql));
echo "<p>Liste des communes autour d'un rayon de ".$distances." kms de ".$ville.".</p>";
print_r($result);
?>
Je me suis servi de ce site pour trouver la formule.
Voici ce que j'affiche :
a écrit :
SELECT * FROM `villes` WHERE [B]98.7576605344 <= 50[/B]
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Documents and Settings\Api\Bureau\xampp\htdocs\villes\liste_villes.php on line 11
Liste des communes autour d'un rayon de 50 kms de Avignon.
N'y aurait-il pas une meilleure façon de l'écrire ? Car le calcul n'est pas cohérent (98.7576605344 <= 50)... Où est l'erreur ? :?
Merci de m'aiguiller s'il vous plaît

Modifié par Api1000 (28 Jul 2008 - 09:28)