A voir également:
- Localiser adresse ip
- Localiser ip - Meilleures réponses
- Localiser adresse ip précisément - Meilleures réponses
- Localiser une adresse ip avec précision ✓ - Forum - Réseau
- Comment localiser une adresse ip ✓ - Forum - Jeux en ligne
- Comment localiser précisément quelqu'un ? ✓ - Forum - Réseau
- Localiser une adresse ip - Conseils pratiques - Sécurité
- Localiser une adresse ip avec google earth - Conseils pratiques - Google
20 réponses
Vypuc
Le script de m2ok me localise à 20 km de chez moi alors que je vis à moins de 500m de Grenoble !
Enfin bon !
Moi j'ai trouvé (en cherchant et sans réinventer la roue)
http://ipinfodb.com/ip_location_api.php
Ils ont même la gentillesse de mettre tout le code php pour questionner leur site sur les adresses ip
Suffit de se servir !
On peut récupérer dans des variables, le pays, la région, la ville,...
Enfin bon !
Moi j'ai trouvé (en cherchant et sans réinventer la roue)
http://ipinfodb.com/ip_location_api.php
Ils ont même la gentillesse de mettre tout le code php pour questionner leur site sur les adresses ip
Suffit de se servir !
On peut récupérer dans des variables, le pays, la région, la ville,...
phpman
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 = "https://whatismyipaddress.com/ip-lookup";
$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
?>
<?
$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 = "https://whatismyipaddress.com/ip-lookup";
$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
?>
thefrox
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>';
?>
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>';
?>
m2ok
J'ai réaliser et utilises un script qui marche très bien.
Il suffit d'indiquer l'IP et le script retourne la ville de provenance du visiteur. Il est facilement maniable en PHP.
Il suffit d'indiquer l'IP et le script retourne la ville de provenance du visiteur. Il est facilement maniable en PHP.
<?php $ip = "l'ip à géolocaliser"; $script = "http://********/geoloc/geo.php?IP="; $retour = file_get_contents($script.$ip); echo $retour; ?>
sweetone
- Messages postés
- 16
- Date d'inscription
- mercredi 31 mars 2010
- Statut
- Membre
- Dernière intervention
- 20 octobre 2017
bonjour ..
je n'y connais RIEN dans les scripts et autres ..
mais j'ai besoin de localiser précisément l'expéditeur de messages que je reçois régulièrement.
j'ai son Ip et son pays mais pas sa ville ou localisation précise et c'est vraiment urgent...
je suis allée sur ton blog mais c'est trop technique pour moi .. ;o)
peux tu m'aider stp ?
je n'ai pas trouver comment t'adresser un message privé ici pur te donner mon msn ou mon mail ...
Cordialement
je n'y connais RIEN dans les scripts et autres ..
mais j'ai besoin de localiser précisément l'expéditeur de messages que je reçois régulièrement.
j'ai son Ip et son pays mais pas sa ville ou localisation précise et c'est vraiment urgent...
je suis allée sur ton blog mais c'est trop technique pour moi .. ;o)
peux tu m'aider stp ?
je n'ai pas trouver comment t'adresser un message privé ici pur te donner mon msn ou mon mail ...
Cordialement
padoeil
je l'ai testé ce script . le problème chez moi s'est que file_get_contents ne fonctionne pas sur mon hebergeur ou alors le site d'origine ( http://www.ieducatif.fr/geoloc/....) a placé une restriction . le seul moyen est un iframe et bouh caca les iframes .... mais sinon il me localise bien a la bonne adresse .
Skim
Bonjours ayant lu les réponses (certaines pertinentes d'autre pas ...) j'ai trouvé un tuto en français pour intégrer la géolocalisation à votre site ( ce n'est pas comparable à Google Analytics mais peut faire l'affaire pour des cas bien précis).
Les plus de cette méthode :
- Permet de cibler et d'enregistrer dans une base de données (ou fichier si ça vous fais plaisir !) la ville, le code postal, le pays, la latitude et la longitude du visiteur en manipulant facilement le code que l'on donne.
- très facile d'intégration,
- permet d'être super classe avec une carte du monde en le couplant à Google Maps.
Les moins :
- c'est comme tout, rien n'est facile, il faut avoir des compétences en PHP.
- Il y a deux versions une gratuite limité à une trentaine d'informations,
l'autre est payante.
! IMPORTANT : les ip dynamiques ne peuvent être localiser avec précision, les ip fixe oui avec une précision de 2 à 20 km il me semble
La méthode est bien sur optimal pour l'enregistrement des information d'administration sinon elle sert à rien puisque Google Analytics fait très bien les statistiques visiteurs.
J'ai failli oublier le lien du tuto :)
http://www.siteduzero.com/tutoriel-3-306955-geolocalisez-vos-visiteurs-grace-a-leur-ip.html
Bonne intégration
Skim
Les plus de cette méthode :
- Permet de cibler et d'enregistrer dans une base de données (ou fichier si ça vous fais plaisir !) la ville, le code postal, le pays, la latitude et la longitude du visiteur en manipulant facilement le code que l'on donne.
- très facile d'intégration,
- permet d'être super classe avec une carte du monde en le couplant à Google Maps.
Les moins :
- c'est comme tout, rien n'est facile, il faut avoir des compétences en PHP.
- Il y a deux versions une gratuite limité à une trentaine d'informations,
l'autre est payante.
! IMPORTANT : les ip dynamiques ne peuvent être localiser avec précision, les ip fixe oui avec une précision de 2 à 20 km il me semble
La méthode est bien sur optimal pour l'enregistrement des information d'administration sinon elle sert à rien puisque Google Analytics fait très bien les statistiques visiteurs.
J'ai failli oublier le lien du tuto :)
http://www.siteduzero.com/tutoriel-3-306955-geolocalisez-vos-visiteurs-grace-a-leur-ip.html
Bonne intégration
Skim
usualpro
Bonjour,
J'ai été confronté a un problème similaire, je devait situer géographiquement un internaute.
Après une rapide recherche sur le web, j'ai finalement opté pour l'API de google Map.
Le lien suivant explique la technique dans le détail:
http://briancray.com/2009/05/29/find-web-visitors-location-javascript-google-api/
Cette solution implique d'obtenir une AJAX Search API Key disponible gratuitement au lien suivant:
http://code.google.com/intl/fr-FR/apis/ajaxsearch/signup.html
J'ai été confronté a un problème similaire, je devait situer géographiquement un internaute.
Après une rapide recherche sur le web, j'ai finalement opté pour l'API de google Map.
Le lien suivant explique la technique dans le détail:
http://briancray.com/2009/05/29/find-web-visitors-location-javascript-google-api/
Cette solution implique d'obtenir une AJAX Search API Key disponible gratuitement au lien suivant:
http://code.google.com/intl/fr-FR/apis/ajaxsearch/signup.html
ak1-fun
Bonjour,
Merci beaucoup pour l'info !
Ca fonctionne tres bien, je compte l'utiliser sur mes sites web pour faire de la pub locale ....
Filmip
Http://www.ak1-fun.com
Merci beaucoup pour l'info !
Ca fonctionne tres bien, je compte l'utiliser sur mes sites web pour faire de la pub locale ....
Filmip
Http://www.ak1-fun.com
Roquebrune
Bonjour,
Je sais que le post est vieux, mais bon il ressort encore sur GG donc ...
Je pense même que cette réponse est déjà sur CCM, enfin bref il existe une API Web de géolocalisation ip sur https://www.geolocalise-ip.com/ et testé par des potes et moi.
Pas grand chose à dire parce que cela fonctionne bien, si ce n'est la limitation à 50 requêtes par jour en gratuit.
Je sais que le post est vieux, mais bon il ressort encore sur GG donc ...
Je pense même que cette réponse est déjà sur CCM, enfin bref il existe une API Web de géolocalisation ip sur https://www.geolocalise-ip.com/ et testé par des potes et moi.
Pas grand chose à dire parce que cela fonctionne bien, si ce n'est la limitation à 50 requêtes par jour en gratuit.
chiryphp
- Messages postés
- 2
- Date d'inscription
- lundi 24 janvier 2011
- Statut
- Membre
- Dernière intervention
- 24 janvier 2011
<?php 002 function getPage($link){ 003 004 if ($fp = fopen($link, 'r')) { 005 $content = ''; 006 007 while ($line = fread($fp, 1024)) { 008 $content .= $line; 009 } 010 } 011 012 return $content; 013 } 014 015 function pingLink($domain){ 016 $file = @fopen($domain,"r"); 017 $status = -1; 018 019 if (!$file) { 020 $status = -1; // Site is down 021 } 022 else { 023 $status = 1; 024 fclose($file); 025 } 026 return $status; 027 028 } 029 030 function checkPage($content){ 031 $links = array(); 032 033 if (strlen($content) > 10){ 034 $startPos = 0; 035 while (strpos($content,'<a ',$startPos)){ 036 $spos = strpos($content,'<a ',$startPos); 037 $tmppos = strpos($content,'>',$spos); 038 $spos = strpos($content,'href',$spos); 039 $spos1 = strpos($content,'"',$spos)+1; 040 $spos2 = strpos($content,"'",$spos)+1; 041 if ($spos2 < $spos1) $spos = $spos2; 042 else $spos = $spos1; 043 044 $epos1 = strpos($content,'"',$spos); 045 $epos2 = strpos($content,"'",$spos); 046 if ($epos2 < $epos1) $epos = $epos2; 047 else $epos = $epos1; 048 049 $startPos = $epos; 050 $link = substr($content,$spos,$epos-$spos); 051 if (strpos($link,'http://') !== false) $links[] = $link; 052 } 053 } 054 055 return $links; 056 } 057 058 ?> 059 060 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> 061 <html> 062 <head> 063 <title>Micro Link Checker</title> 064 <link href="style/style.css" rel="stylesheet" type="text/css" /> 065 </head> 066 <body> 067 <div id="main"> 068 <div id="caption">LINK STATUS</div> 069 <div id="icon"> </div> 070 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="domain" id="domain"> 071 072 <table width="100%"> 073 <tr><td>URL to check:</td><td><input class="text" name="myurl" type="text" size="45"></td></tr> 074 <tr><td align="center" colspan="2"><br/><input class="text" type="submit" name="submitBtn" value="Check links"></td></tr> 075 </table> 076 </form> 077 <?php 078 if (isset($_POST['submitBtn'])){ 079 $url = isset($_POST['myurl']) ? $_POST['myurl'] : ''; 080 if (!(strpos($url,'http://') === 0) ) $url = 'http://'.$url; 081 082 ?> 083 <div id="caption">RESULT : <?php echo $url; ?></div> 084 <div id="icon2"> </div> 085 <div id="result"> 086 <table width="100%"> 087 <?php 088 $txt = getPage($url); 089 $linkArray = checkPage($txt); 090 foreach ($linkArray as $value) { 091 if (pingLink($value) <= 0){ 092 $status = "INVALID"; 093 } else { 094 $status = "OK"; 095 } 096 echo "<tr><td align='left'>$value</td><td>$status</td></tr>"; 097 sleep(2); 098 @ob_flush(); 099 flush(); 100 } 101 102 ?> 103 </table> 104 </div> 105 <?php 106 } 107 ?> 108 <div> 109 </body>
[Publicité supprimée Modération CCM
vallees4
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
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
WeLive.fr
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
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
fnicollet
Salut,
J'ai utilisé l'API PHP de MaxMind pour gélocaliser une adresse IP. Je l'affiche ensuite sur une carte Yahoo! Maps grâce à une application Adobe Flex. Toutes les étapes de l'installation et les scripts PHP sont présentés:
http://www.flex-tutorial.fr
J'ai utilisé l'API PHP de MaxMind pour gélocaliser une adresse IP. Je l'affiche ensuite sur une carte Yahoo! Maps grâce à une application Adobe Flex. Toutes les étapes de l'installation et les scripts PHP sont présentés:
http://www.flex-tutorial.fr
sabaana
- Messages postés
- 7
- Date d'inscription
- vendredi 26 octobre 2007
- Statut
- Membre
- Dernière intervention
- 31 juillet 2010
Regarde ici tous simplement !!!
http://belkhersite.hebergratuit.com/details.php?Article=11
http://belkhersite.hebergratuit.com/details.php?Article=11
rincourt
- Messages postés
- 1
- Date d'inscription
- vendredi 9 décembre 2011
- Statut
- Membre
- Dernière intervention
- 9 décembre 2011
Bonjour,
Avez vous un code complet qui fonctionne?
Mon objectif est de récupérer le nom de la ville dans une variable à partir de la personne qui c'est connecté à mon site.
car je dois rechercher dans ma Base l'association d'echec la plus proche de chez lui.
J'ai 62 ans, et franchement je ne comprends pas pourquoi cela ne fonctionne pas.
Est ce que l'un d'entre vous à une solution simple .
Einstein disait "faites simple simplement mais pas simpliste".
Avez vous un code complet qui fonctionne?
Mon objectif est de récupérer le nom de la ville dans une variable à partir de la personne qui c'est connecté à mon site.
car je dois rechercher dans ma Base l'association d'echec la plus proche de chez lui.
J'ai 62 ans, et franchement je ne comprends pas pourquoi cela ne fonctionne pas.
Est ce que l'un d'entre vous à une solution simple .
Einstein disait "faites simple simplement mais pas simpliste".
momo
<script language="Javascript" src=" http://map.geoup.com/geoup?template=welcome"></script>
je pense que ça doit marcher essaie le
je pense que ça doit marcher essaie le
ridefmx
- Messages postés
- 4
- Date d'inscription
- mardi 11 décembre 2007
- Statut
- Membre
- Dernière intervention
- 2 avril 2009
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+
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+
leletiba
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
pierrot
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.
Yota238
Là tu vas trouver ton bohneur
http://www.2enetworx.com/
Yota238
http://www.2enetworx.com/
Yota238
Nayliss
Bonjour à toutes et tous,
Pour ma part, j'ai absolument besoin d'un système de géolocalisation très précis ( avec une marge d'erreur inférieure à 100 mètres).
Car dans le cadre de la création de mon site " communautaire" il faut que je puisse indiquer à chaque membres la distance qui les séparent les uns des autres.
Dans cette optique connaissez-vous et utilisez-vous le système mis en place sur le site " adopte un mec"? Et si oui, est il viable et gratuit? Merci pour vos réponses et votre intérêt!
Pour ma part, j'ai absolument besoin d'un système de géolocalisation très précis ( avec une marge d'erreur inférieure à 100 mètres).
Car dans le cadre de la création de mon site " communautaire" il faut que je puisse indiquer à chaque membres la distance qui les séparent les uns des autres.
Dans cette optique connaissez-vous et utilisez-vous le système mis en place sur le site " adopte un mec"? Et si oui, est il viable et gratuit? Merci pour vos réponses et votre intérêt!
76zzz29
>
Nayliss
cela demanderais que chacun donne sa localisation luis même et que tu face toi même une base de données énorme qui localiserais chaque ip enregistrée mais la encore on se retrouve face au problème des ip dynamique. un ip ne peut pas être plus précise que le relais ou elle est branché (la boucle local). certaine ip sont anonyme et ne donne comme localisation proxy anonyme (même sans proxy), il existe des plages d'ip qui sont donée a un emplacement géographique (c'est ce qu'utilise la plupart des localisateur ip)
moi j'utilise les plage ip et j'exclue une par une les ip que je sait dynamiques, je remplace les nombre pour qu'ils soit tous complet (exemple 27.18.567.43 (cette ip n'existe pas car elle contient un nombre supérieur a 255) j'utilise une expression régulière en php pour la transformé en 027.018.567.043 puis un $ip=str_replace(".","",$ip);
pour supprimé les point(on a donc 027018567043) et la on en fait un simple nombre ce qui fait 27018567043 (sa a juste supprimé le premier 0 mais il est pas important celui la)
puis je le compare au ip de ma base de données (qui ont aussi été mis au format de simple nombre)et la , il y a plus qu'à faire quelques étape rapide.
// 1 si c'est une ip dynamique, on saute la suite, la on peut riens faire.
// en code c'est juste un
if ($ip=="une ip dynamique" || $ip=="une autre ip dynamique" [et encore avec toute les ip dynamique]) {echo "nous n’avons pas pu vous localisé"}
// 2 sinon se n'est pas une ip dynamique on vérifi les plage de donéeet on la localise
else
{
if( $ip>=(début de plage d'ip) && $ip<=(fin de plage de donée){echo "ville correspondante";
if( $ip>=(début d une autre plage d'ip) && $ip<=(fin de l'autre plage de donée){echo "ville correspondante";
...
}
ma base de donnée est un simple fichier text avec une ip par ligne pour les ip dynamique
et un autre fichier text avec une ip par ligne sur 2 lignes séparé par une ligne vide pour les plages d'ip et pour le if, j'ai fait une boucle PHP qui compte le nombre de retour a la ligne pour connaitre le nombre d'ip enregistrée et la récupérer a chaque fois pour écrire toute les ip dynamique a viré automatiquement. (j'utilise uniquement PHP pour lire du txt, pas besoin de base de données SQL mais rien n’empêche d'en utilisé une)
pour récupérer son ip dans $ip j'utilise sa qui en plus renvoi si on utilise un proxy
$ipproxy="";
$ipprox="";
$proxy=0;
if (isset($_SERVER['HTTP_CLIENT_IP'])){
$ipclient=$_SERVER['HTTP_CLIENT_IP'];
$ipprox=" et vous utilisez un internet partager d'addresse: ";
$ipprox.=$_SERVER['REMOTE_ADDR'];
$proxy=1;
}
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ipclient=$_SERVER['HTTP_X_FORWARDED_FOR'];
$ipproxy=" et vous utilisez un proxy d'adresse: ";
$ipproxy.=$_SERVER['REMOTE_ADDR'];
$proxy=1;
}
if($proxy==0) {
$ipclient=$_SERVER['REMOTE_ADDR'];
$ipproxy=" et vous utilisez n'utilisez aparement pas de proxy";
}
echo "<p>votre IP est: " ;echo $ipclient;echo $ipprox; echo $ipproxy ;echo "</p>" ;
(source du code de récuperation de l'ip http://76zzz29.freeboxos.fr/login)
ajoutez juste un $ip=$ipclient si vous ne voulez rien changer sinon remplacer l'un par l'autre(places sa avant la localisation) remplacez juste le echo "<p>votre IP est: " ;echo $ipclient;echo $ipprox; echo $ipproxy ;echo "</p>" ;
par le scripte de localisation
moi j'utilise les plage ip et j'exclue une par une les ip que je sait dynamiques, je remplace les nombre pour qu'ils soit tous complet (exemple 27.18.567.43 (cette ip n'existe pas car elle contient un nombre supérieur a 255) j'utilise une expression régulière en php pour la transformé en 027.018.567.043 puis un $ip=str_replace(".","",$ip);
pour supprimé les point(on a donc 027018567043) et la on en fait un simple nombre ce qui fait 27018567043 (sa a juste supprimé le premier 0 mais il est pas important celui la)
puis je le compare au ip de ma base de données (qui ont aussi été mis au format de simple nombre)et la , il y a plus qu'à faire quelques étape rapide.
// 1 si c'est une ip dynamique, on saute la suite, la on peut riens faire.
// en code c'est juste un
if ($ip=="une ip dynamique" || $ip=="une autre ip dynamique" [et encore avec toute les ip dynamique]) {echo "nous n’avons pas pu vous localisé"}
// 2 sinon se n'est pas une ip dynamique on vérifi les plage de donéeet on la localise
else
{
if( $ip>=(début de plage d'ip) && $ip<=(fin de plage de donée){echo "ville correspondante";
if( $ip>=(début d une autre plage d'ip) && $ip<=(fin de l'autre plage de donée){echo "ville correspondante";
...
}
ma base de donnée est un simple fichier text avec une ip par ligne pour les ip dynamique
et un autre fichier text avec une ip par ligne sur 2 lignes séparé par une ligne vide pour les plages d'ip et pour le if, j'ai fait une boucle PHP qui compte le nombre de retour a la ligne pour connaitre le nombre d'ip enregistrée et la récupérer a chaque fois pour écrire toute les ip dynamique a viré automatiquement. (j'utilise uniquement PHP pour lire du txt, pas besoin de base de données SQL mais rien n’empêche d'en utilisé une)
pour récupérer son ip dans $ip j'utilise sa qui en plus renvoi si on utilise un proxy
$ipproxy="";
$ipprox="";
$proxy=0;
if (isset($_SERVER['HTTP_CLIENT_IP'])){
$ipclient=$_SERVER['HTTP_CLIENT_IP'];
$ipprox=" et vous utilisez un internet partager d'addresse: ";
$ipprox.=$_SERVER['REMOTE_ADDR'];
$proxy=1;
}
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ipclient=$_SERVER['HTTP_X_FORWARDED_FOR'];
$ipproxy=" et vous utilisez un proxy d'adresse: ";
$ipproxy.=$_SERVER['REMOTE_ADDR'];
$proxy=1;
}
if($proxy==0) {
$ipclient=$_SERVER['REMOTE_ADDR'];
$ipproxy=" et vous utilisez n'utilisez aparement pas de proxy";
}
echo "<p>votre IP est: " ;echo $ipclient;echo $ipprox; echo $ipproxy ;echo "</p>" ;
(source du code de récuperation de l'ip http://76zzz29.freeboxos.fr/login)
ajoutez juste un $ip=$ipclient si vous ne voulez rien changer sinon remplacer l'un par l'autre(places sa avant la localisation) remplacez juste le echo "<p>votre IP est: " ;echo $ipclient;echo $ipprox; echo $ipproxy ;echo "</p>" ;
par le scripte de localisation
Voilà pourquoi ça te met à 20km au lieu de 500m...