Page 1 sur 1
php et stats visites france
Posté : 16 déc. 2005, 19:01
par donatello
Bonjour à tous,
Beaucoup d'entre vous connaissent certainement phpMyVisites, l'outil de stas pour sites web.
On y trouve une mappemonde qui permet de savoir de quel pays vient le visiteur. 2 questions:
1- Comment faire pour identifier en php le pays d'où vient un visiteur?
2- Est-ce possible d'identifier le département ou la région de france d'ou vient un visiteur?
Merci pour vos réponses.
Posté : 16 déc. 2005, 19:05
par jeff
salut
a partir d'une adresse ip c'est possible va voir ce site
http://www.spip-contrib.net/Google-Maps-et-Spip
mais de lors que la personne se trouve derriere un proxi ce n'est plus la meme histoire
Posté : 18 déc. 2005, 13:30
par donatello
Très intéressant. J'ai récupéré la partie du script qui permet d'obtenir les coordonnées d'une adresse ip grâce à hostip:
<?
$ip="82.227.167.30";
function locateip($ip) {
static $location = array();
if(!isset($location[$ip])) {
$stream = file_get_contents("http://www.hostip.info/api/get.html?ip=$ip&position=true");
$lines = split ("\n", $stream);
foreach($lines as $l) {
$prop = split(':',$l);
$location[$ip][trim($prop[0])] = addslashes(trim($prop[1]));
}
}
$location[$ip];
}
function latitude($location) {
$location['Latitude'];
}
function longitude($location) {
return $location['Longitude'];
}
function country($location) {
return $location['Country'];
}
function city($location) {
return $location['City'];
}
?>
Le problème c'est que ce script ne m'affiche rien en sortie quand je remplace les "return" par "echo"....ai-je oublié quelquechose?
Posté : 18 déc. 2005, 13:38
par jeff
a tu essayé en ligne pour voir si ca fonctionnait ?
Posté : 18 déc. 2005, 13:42
par donatello
ha, bonne question...g fais le test et je reviens.
Posté : 18 déc. 2005, 14:36
par donatello
ben à priori c'est pas mieux...pas d'erreur mais une page blanche.
Posté : 18 déc. 2005, 14:51
par donatello
petite précision. dans le script au dessus, il manque un return juste avant
$location[$ip];
pour renvoyer le résultat de la fonction. Je l'ai bien rajouté dans mes tests.
Posté : 18 déc. 2005, 14:57
par jeff
a tu tester $stream ???
Posté : 18 déc. 2005, 15:08
par Ic3Cub3
Peut etre que tout simplement hostip.info ne sait pas localiser ton ip...
J'ai essayer en ligne sur leur site et il n'arrive pas a me localiser :p
Et pourtant je ne suis pas derriere un proxy.
Posté : 18 déc. 2005, 16:56
par donatello
oui t'as raison. je suis allé sur le site et c pareil pour moi.
vous connaissez pas d'autres services dans le même genre?
J'aimerais vraiment arriver à créer une carte de france avec les connexions visiteurs par région.
Avez-vous déjà vu ce type d'applis?
Posté : 18 déc. 2005, 19:45
par Ic3Cub3
Suit le lien de Jeff.....
Posté : 19 déc. 2005, 11:11
par donatello
ben j'ai suivi le lien et c'est de là que vient le script collé plus haut qui ne fonctionne pas. Je demande s'il y a d'autres possibilités, justement.
Posté : 10 janv. 2006, 17:23
par Invité
ce sujet m'intéresse...
doit-on en conclure qu'il est impossible à l'heure actuelle de dresser une carte de france avec la région ou le département d'origine du visiteur, autrement que par le service cité plus haut?
(
http://www.spip-contrib.net/Google-Maps-et-Spip )
Posté : 10 janv. 2006, 17:34
par Spols
voici le script donné et corigé et testé
<?
$ip="82.227.167.30";
function locateip($ip) {
static $location = array();
if(!isset($location[$ip])) {
$stream = file_get_contents("http://www.hostip.info/api/get.html?ip=$ip&position=true");
$lines = split ("\n", $stream);
foreach($lines as $l) {
$prop = split(':',$l);
$location[$ip][trim($prop[0])] = addslashes(trim($prop[1]));
}
}
return $location[$ip];
}
function latitude($location) {
return $location['Latitude'];
}
function longitude($location) {
return $location['Longitude'];
}
function country($location) {
return $location['Country'];
}
function city($location) {
return $location['City'];
}
$a = locateip($ip);
echo "<pre>";var_dump($a);echo "</pre><br>";
?>
Changer le echo avec l'application voulue