Projet Webmaster PHP

Portail Php


Service de géolocalisation des visiteurs avec carte et API GoogleMap


C'est un service qui est en place sur la thématique géolocalisation.
Il permet d'afficher la ville de l'internaute connecté, ou de l'ensemble des visiteurs du site; puis d'afficher, par un clic, la carte Google maps de la ville de l'internaute.


Les composants techniques utilisés


  1. Il y a d'une part les coordonnées géographiques du visiteur. Dans une version initiale, il s'agissait de récupérer l'adresse IP du visiteur, puis de la soumettre à un serveur, lequel renvoyait les coordonnées. Hélas toutes les villes du monde n'étant pas dans la base de donnée, le taux de mauvaises réponses était pour la France trop conséquent pour que le service soit exploitable. Depuis peu c'est l'hébergeur du site qui renvoi ces informations dans deux variables serveur.
  2. Une fois les coordonnées acquises, il n'y a rien d'autre à faire qu'à implémenter l'API google et afficher la carte. L'API doit permettre d'afficher la carte et de la centrer sur des coordonnées géographiques (latitude, longitude). Une petite légende sur l'épingle indique la ville du point de connexion de l'internaute.

Les scripts

Les scripts ont été divisés eux deux.
Un premier script basé sur le script des visiteurs connectés génère un fichier plat en texte avec les différentes villes et coordonnées géographiques durant un laps de temps donné.

Un second script lit ce fichier et affiche le contenu de la colonne des villes connectées avec mise en place de liens (colonne des coordonnées géographiques)

Ce second script appelle une page d'affichage d'une carte GoogleMaps et dont l'API ne fait que centrer la carte sur les coordonnées reçues en paramètres.
Si la carte peut être affichée à partir de coordonnées géographique liée à une adresse IP d'un visiteur, alors un service web de géolocalisation d'internaute est en place.

On peut également remplacer l'internaute par un bot d'indexation pour constater que la ville de Mountain view (Google et son GoogleBot) est très proche de la ville de Sunnyvale (Yahoo! et son Yahoo! Slurp)