Site des exemples HTML, CSS, Javascript et PHP - Page 7



Une carte avec un rendu topographique

Il semble que les serveurs de OpenTopoMap ne soient pas dimensionnés pour un usage intensif. Il va falloir soit créer et stocker ses propres tuiles, soit imaginer un système de mise en cache des tuiles d'OpenTopoMap. (Voir https://github.com/sinky/tile-cache-php/blob/master/index.php )
Remarquer que le marqueur de gauche ouvre une popup contenant un lien extérieur. (Voir fonction ShowCarte1)


La géolocalisation avec Nominatim

Ici on va utiliser un autre fournisseur de tuiles :  MTBMAP   La variable VarCarte2 est déclarée globalement car dans la fonction GetResponse() on manipule la carte.
Le bouton LOCALISER envoi l'adresse saisie au script PHP qui fait une requete vers NOMINATIM, mais on aurait pû faire la requête vers NOMINATIM directement depuis cette page.

$Resultats=json_decode(file_get_contents("https://nominatim.openstreetmap.org/search?email=xxx&format=json&street=" . urlencode("{$Parametres[0]}") . "&city=" . urlencode("{$Parametres[1]}")));

La requête NOMINATIM DOIT contenir un paramètre email quelconque ...
Le retour de NOMINATIM est analysé et le résultat placé dans 2 paramètres Lat et Lon séparés par une TAB
Au retour de la requête AJAX avec l'action LOC on créé un marqueur et on zoome sur la carte.

Localiser


Voir sources