|
|
|
|
<script language="Javascript" src=" http://map.geoup.com/geoup?template=welcome"></script>
je pense que ça doit marcher essaie le
|
bonjour
Je suis alle sur ton site la geolocalisation est bonne pour le pays mais pas pour la ville. j'au voulu remplir le questionaire mais impossible de terminer, le serveur me demande toujours de mettre un code, que je mets evidement et qu'il trouve a chaque fois inexact. La ville indique est quand meme a 800 km de chez moi lol See you soon |
comment localisé le pay d'une photo |
L'outil Google Analytics te permet de faire la géolocalisation par continent, pays, et même ville.
C'est très simple à implémenter (juste un javascript à coller), et ça marche bien, si tu veux pas trop t'embêter je conseille de faire le suivi des visites par une application tierce-partie comme celle là. A+ |
bonjour j'aimerais avoir sur mon forum a chaque fois que les membres écrive un drapeaux qui s'affiche de leur pays c'est possible ?et comment faire merci |
bonjour, je voudrai savoir s'il etait possible d'avoir le code du site WeLive juste pour la localisation grace a l'IP. ou un autre code mais aussi precis que ce site au nievau de la ville. je trouve cela tres interessant pour savoir ou lancer une campagne de publicté pour une entreprise. cela serai mi coté administrateur enregistrer dans une bd. |
|
Pour les webmasters qui le désirent, je fournis un script PHP sur mon site Internet http://www.WeLive.fr dans la rubrique Géolocalisation par IP.
Le script PHP vous retourne les informations sous forme de variables PHP : Pays, Drapeau du pays, Région-Département-Code Postal pour la France, Ville. Celui-ci nécessite une inscription préalable aux fins d'éviter que n'importe qui l'utilise. A bientôt WeLive.fr
|
No comments
<? $a=array(); // get real ip adress @detectProxy($a); $ip_avant = $a['IP']; //get localisation $ip2country = @ip2country($ip_avant); print_r($ip2country ); function ip2country($ipadress) { $surl = "http://whatismyipaddress.com/staticpages/index.php/lookup-results"; $data = "LOOKUPADDRESS=" . $ipadress; $geolocalisation = do_post_request($surl, $data); preg_match("#<font class='block-title'>Geo-Location Information<font size=2></B></font></font><P><UL>(.*?)</TABLE>#is", $geolocalisation, $mylocalistion, PREG_OFFSET_CAPTURE); preg_match("#<TR><TD>Country</TD><TD>(.*?)<#is", $mylocalistion[1][0], $country, PREG_OFFSET_CAPTURE); preg_match("#<img src=\"(.*?)\"#is", $mylocalistion[1][0], $countryimg, PREG_OFFSET_CAPTURE); preg_match("#<TR><TD>City</TD><TD>(.*?)</TD>#is", $mylocalistion[1][0], $city, PREG_OFFSET_CAPTURE); $a = array ("country" => trim($country[1][0]), "city" => trim($city[1][0]), "countryimg" => trim($countryimg[1][0])); return $a; } function do_post_request($url, $data, $optional_headers = null) { $start = strpos($url,'//')+2; $end = strpos($url,'/',$start); $host = substr($url, $start, $end-$start); $domain = substr($url,$end); $fp = pfsockopen($host, 80); if(!$fp) return null; fputs ($fp,"POST $domain HTTP/1.1\n"); fputs ($fp,"Host: $host\n"); if ($optional_headers) { fputs($fp, $optional_headers); } fputs ($fp,"Content-type: application/x-www-form-urlencoded\n"); fputs ($fp,"Content-length: ".strlen($data)."\n\n"); fputs ($fp,"$data\n\n"); $response = ""; while(!feof($fp)) { $response .= fgets($fp, 1024); } fclose ($fp); return $response; } function detectProxy(&$ar) {//begin of function $gotcha=false; if(array_key_exists('HTTP_X_FORWARDED_FOR',$_SERVER) || array_key_exists('HTTP_PROXY_CONNECTION',$_SERVER) || array_key_exists('HTTP_VIA',$_SERVER)) {$gotcha=TRUE;} $gotcha = (stristr($_SERVER['REMOTE_HOST'],"proxy") !== FALSE ) ? TRUE : $gotcha ; if($gotcha) { $ar['PORT']= (array_key_exists('REMOTE_PORT',$_SERVER) ? $_SERVER['REMOTE_PORT'] : "unknown"); $ar['HOST']= (array_key_exists('REMOTE_HOST',$_SERVER) ? $_SERVER['REMOTE_HOST'] : "unknown"); $ar['IP']= (array_key_exists('REMOTE_ADDR',$_SERVER) ? $_SERVER['REMOTE_ADDR'] : "unknown"); $ar['FORWARDED_FOR']=(array_key_exists('HTTP_X_FORWARDED_FOR',$_SERVER) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : "unknown"); $ar['INFO']= (array_key_exists('HTTP_VIA',$_SERVER) ? $_SERVER['HTTP_VIA'] : "unknown"); } else { $ar['PORT']= (array_key_exists('REMOTE_PORT',$_SERVER) ? $_SERVER['REMOTE_PORT'] : "unknown"); $ar['HOST']= (array_key_exists('REMOTE_HOST',$_SERVER) ? $_SERVER['REMOTE_HOST'] : "unknown"); $ar['IP' ]= (array_key_exists('REMOTE_ADDR',$_SERVER) ? $_SERVER['REMOTE_ADDR'] : "unknown"); } return $gotcha; }//end of function ?> |
Voici le code php permettant de recuperer le pays, la region, la ville, la longitude et la lattitude par l'ip d'un visiteur
Seul probléme on ne peut soumettre que 25 demandes / jour Cela conviendra au petit site souhaitant permettre une inscription prés-remplie <?php $ip=$_SERVER["REMOTE_ADDR"]; // Initialisation de la page vers laquelle on poste $url = 'http://www.maxmind.com/app/lookup_city'; // Mis en forme des valeurs postees $post = array( 'ips' => $ip ); //Mise en place du POST $postdata = '' ; foreach( $post as $name => $value ) { $postdata .= $name . '=' . $value . "&" ; } // Creation du tableau d'option $opts = array( 'http' => array ( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $postdata ) ); // Creation du contexte $context = stream_context_create($opts); // Recuperation d une page en methode post $http_page = file_get_contents($url,false,$context); // Nettoyage du code recupere $http_page=eregi_replace("<!DOCTYPE(.+)$ip","",$http_page); $http_page=eregi_replace("</table>(.+)</html>","",$http_page); $http_page=str_replace('</font></td>','',$http_page); $http_page=str_replace('</tr>','',$http_page); $http_page=explode('<td><font size="-1">',$http_page); //Recuperation des valeurs dans le tableau $country_alpha2=$http_page[1]; $country=$http_page[2]; $region=$http_page[4]; $ville=$http_page[5]; $latitude=(float)$http_page[7]; $longitude=(float)$http_page[8]; //Affichage des resultats echo 'country_alpha2:'.$country_alpha2.'<br>'; echo 'country:'.$country.'<br>'; echo 'region:'.$region.'<br>'; echo 'verif:'.$ville.'<br>'; echo 'latitude:'.$latitude.'<br>'; echo 'longitude:'.$longitude.'<br>'; ?> |
Résultats pour localisation par adresse ip en php
Résultats pour localisation par adresse ip en php
Résultats pour localisation par adresse ip en php
Résultats pour localisation par adresse ip en php
Résultats pour localisation par adresse ip en php