1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
/* ===== Retourne les coordonnées de Géo-localisation ===== */
function getGEOLocMXMind($LICENSE_KEY,$FILTER_IP)
{
/* Principe :
==========
Retourne une géo-localisation du client connecté, cette fonction filtre l'utilisation externe
---------------------------------------------------------------------------------------------
=> Code à mettre dans un fichier représentant le nom du client, exemple : NomDuClient.php
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
include 'inc.function.php';
// Licence MaxMind + Adresse IP-Serveur du client à filtrer
echo getGEOLocMXMind('LICENCEKEY','00.000.00.00');
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
=> Code à mettre dans la page hébergée sur le serveur du client
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
$IPS_ADDR = $_SERVER["SERVER_ADDR"];
$IP_ADDR = $_SERVER["REMOTE_ADDR"];
include 'http://00.000.00.00/clients/NomDuClient.php?ip='.$IP_ADDR.'&ips='.$IPS_ADDR;
---------------------------------------------------------------------------------------------
Paramètrage de la fonction :
============================
$LICENSE_KEY ==> Représente la « licence MaxMind »
$FILTER_IP ==> Représente l'adress-ip du serveur du client
*/
# Retourne l'IP-Serveur du client
$SERVER_IP_ADDRESS = $_GET["ips"];
echo $SERVER_IP_ADDRESS;
$error = '<font color="red">ERREUR FOURNISSEUR</font>';
# Filtre l'utilisation
if ($SERVER_IP_ADDRESS==$FILTER_IP) {
$IP_ADDRESS = $_GET["ip"];
$query = "<a href="http://geoip1.maxmind.com/b?l" target="_blank">http://geoip1.maxmind.com/b?l</a>=" . $LICENSE_KEY . "&i=" . $IP_ADDRESS;
$url = parse_url($query);
$host = $url["host"];
$path = $url["path"] . "?" . $url["query"];
$timeout = 1;
$fp = fsockopen ($host, 80, $errno, $errstr, $timeout) or die($error);
if ($fp) {
fputs ($fp, "GET $path HTTP/1.0\nHost: " . $host . "\n\n");
while (!feof($fp)) {
$buf .= fgets($fp, 128);
}
$lines = split("\n", $buf);
$data = $lines[count($lines)-1];
fclose($fp);
}
$geo = explode(",",$data);
$country = $geo[0];
$state = $geo[1];
$city = $geo[2];
$lat = $geo[3];
$lon = $geo[4];
return '<b>'.$IP_ADDRESS.' <img src="connect.gif" align="center"></b> '.$data;
}
else {
return $error;
}
// Exemple => echo getGeoLoMXMind('LICENCEKEY','00.000.00.00');
} |
Partager