se connecter
Présentation

Cet application web de géolocalisation décentralisée vous permettra de récupérer les données qui identifient les machines des utilisateurs de votre site et les afficher sur une carte. Une fois les données enregistrées, ce programme est utilisable aussi bien localement, en intranet, en réseau maillé que sur le web.
Les éléments nécessaire au bon fonctionnement de l'application : PHP 5 avec allow_url_fopen, gd2, module JSON.

Fonctionnalités
  • Compatibilité Ip V4 / V6.
  • Geoip ,GIS mapping sur PHP-GD.
  • Carte disponible en 2D , différents formats allant jusqu'a 2048px de largeur.


Exemple

La carte est disponible sous différentes tailles et couleurs. La bibliothèque GD de php se charge côté serveur de générer les points de géolocalisation.




Compatibilité

accessibility


Technologies



JSON

Grâce à la technologie JSON vous pourrez aiséement fabriquer vos API, basé sur les sources. En plus des données d'identifications les cartes peuvent être aussi récupérées à ce format et etre transférées sur vos serveurs. Le fichier 2dmapjson.php permet de générer les cartes aux format JSON.

Cette partie du script vous permet d'afficher le dernier enregistrement d'addresse ip à l'intérieur de la base de donnée à l'aide du rendu JSON contenu dans le fichier json.php. Le rendu JSON se fait à partir d'une requette XMLHTTP (xhr).

Récupération des informations…


Code source :

<p id="resultatjsonphp">Récupération des informations…</p>

<script>
	(function() {

		var element = document.getElementById('resultatjsonphp');

		var notSupported = function() {
			element.innerHTML = 'Fail, données illisibles. :(';
			element.className = 'fail';
		};

		var supported = function() {
			element.className = 'pass';
		};

		var getJSON = function(url, successHandler, errorHandler) {
			if (typeof XMLHttpRequest == 'undefined') {
				return notSupported();
			}
			var xhr = new XMLHttpRequest();
			xhr.open('get', url, true);
			xhr.responseType = 'json';
			xhr.onload = function() {
				var status = xhr.status;
				if (status == 200) {
					successHandler && successHandler(xhr.response);
				} else {
					errorHandler && errorHandler(status);
				}
			};
			xhr.send();
		};

		// charge une ressource /json.php
		getJSON('http://votresiteweb.tld/geolocalisation/json.php', function(data) {
			if (typeof data == 'string') {
				notSupported();
			} else {



				supported(element.innerHTML = '<b>IP :</b> ' + data.ip + '<br><b>Hôte :</b> ' + data.iphost + '<br><b>Date :</b> ' + data.time +  '<br><b>Latitude : </b>' + data.lat + '<br><b>Longitude :</b> ' + data.longi + '<br><b>Navigateur : </b>' + data.agent + '<br><b>Requète : </b>' + data.request_uri + '<br><b>Domaine : </b> ' + data.domref + '<br><b>Referer : </b>' + data.referer);
				
			}
		});

	}());
</script>

Projet de Thibaut LOMBARD