perig
Messages postés358Date d'inscriptionvendredi 1 novembre 2002StatutMembreDernière intervention 5 septembre 2006
-
5 déc. 2003 à 23:49
cs_heine
Messages postés58Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention15 novembre 2006
-
19 mai 2005 à 10:23
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_heine
Messages postés58Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention15 novembre 2006 19 mai 2005 à 10:23
euh tu parles de dixit la, c'est bien c vrai parce que l'on voit l'apercu en tableau et tout, mais toi vour visualiser les stats dans ta source c'est ou..? ta source est un simple include de quelques varibles la... j'me trompe.? :*/
cs_cedy
Messages postés1Date d'inscriptiondimanche 1 février 2004StatutMembreDernière intervention25 mars 2005 25 mars 2005 à 19:51
pour connaitre le pays, perso je fait un whois sur l'ip via un serveur fait pour puis j'explode ce que je reçoie et resort la ligne qui contien le mot country. pour choper l'ip qqun t'as déja répondu ..
le code que je te cole ici est tiré d'un autre site, je l'ai modifier pour qu'il ne me donne que ce que j'ai besoin . c'est a dire la variable $pays
__________________________________
<?
// ********************************************
// Initiation des variables
// ********************************************
$whois_ip_demande=getenv("REMOTE_ADDR");
// ********************************************
// Vérification des champs vide
// ********************************************
if (empty($whois_ip_demande))
whois_erreur(1);
// ********************************************
// Résolution du nom et conformité de l'IP selectionné
// ********************************************
if (ip2long($whois_ip_demande)==-1) // Si ce n'est pas une IP
{
$nom_correspondant=gethostbyname($whois_ip_demande); // Alors résolution du nom
if ($nom_correspondant!=$whois_ip_demande) // Si il a résolut le nom
$whois_ip_demande=$nom_correspondant; // Récupération de l'ip résolut
else
whois_erreur(2);
}
// ********************************************
// Transforme les saisies tel que 10.10..4 en 10.10.0.4
// ********************************************
$inetaddr=ip2long($whois_ip_demande);
$whois_ip_demande=long2ip($inetaddr);
// ********************************************
// Appel de la fonction connexion
// ********************************************
$buffer=connexion("whois.ripe.net",$whois_ip_demande);
$serveur_ayant_repondu="whois.ripe.net";
// ********************************************
// Vérifie si on est sur le bon serveur
// ********************************************
if (eregi("www.iana.org", $buffer))
{
$buffer=connexion("whois.arin.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.arin.net";
}
elseif (eregi("whois.apnic.net", $buffer))
{
$buffer=connexion("whois.apnic.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.apnic.net";
}
elseif (eregi("whois.registro.br", $buffer))
{
$buffer=connexion("whois.registro.br",$whois_ip_demande);
$serveur_ayant_repondu = "whois.registro.br";
}
elseif (eregi("nic.ad.jp", $buffer))
{
$buffer=connexion("whois.nic.ad.jp",$whois_ip_demande);
}
// ********************************************
// Fin du script général
// ********************************************
//fin_du_script();
// ********************************************
// Fonction de connexion whois
// ********************************************
function connexion($serveur,$ip_recherche)
{
// ********************************************
// Ouverture de la session TCP
// ********************************************
$socket=fsockopen($serveur, 43);
if ($socket!=0)
{
// ********************************************
// Envoi de l'IP demandé
// ********************************************
fwrite($socket, "$ip_recherche\n");
// ********************************************
// Receptionne dans buffer la réponse
// ********************************************
while (feof($socket)==0)
$tampon = $tampon . fgets($socket, 1000); // Le . signifie concatenation
// ********************************************
// Fonction d'affichage de l'erreur de saisie
// ********************************************
function whois_erreur($erreur) // $erreur représente le numéro d'erreur.
{
// ********************************************
// Fin du script général
// ********************************************
fin_du_script();
}
function fin_du_script()
{
// ********************************************
// Fin du script général
// ********************************************
exit(0);
}
?>
________________________________
Splacheur
Messages postés69Date d'inscriptionjeudi 8 mai 2003StatutMembreDernière intervention 9 octobre 2005 8 déc. 2003 à 14:43
nan je crois que pour savoir le pays du visiteur, il faut en effet utiliser l'IP (pas le $HTTP_USER_AGENT), et la traiter avec un script spécial utilisant une base de donnée contenant tous les noms de pays. Un membre en a déjà parlé ici, je vous conseil de faire une recherche grâce au moteur en haut de la page ;-)
moon80
Messages postés1Date d'inscriptionlundi 23 juin 2003StatutMembreDernière intervention 6 décembre 2003 6 déc. 2003 à 20:47
Je connais dixipub.com c'est vrai que c'est l'un des meilleurs et il est très complet.
Pour ta question :
Grace à $HTTP_USER_AGENT tu peux récupérer la langue et la pays de l'utilisateur, ainsi que le navigateur. et l'OS
Pour cela, il faut faire des extractions du type "fr -> france" "ie 6.0 -> internetExplorer6.0" etc.
flashfun
Messages postés296Date d'inscriptionmercredi 10 septembre 2003StatutMembreDernière intervention11 septembre 2004 6 déc. 2003 à 14:00
Souvant, les configues client sont récupéré avec des javascripts.
Il génère une balise image, dont l'adresse correspond à une page php.
La page php enregistre les infos par la methode GET puis renvois une image.
C'est la seul methode que je connais.
perig
Messages postés358Date d'inscriptionvendredi 1 novembre 2002StatutMembreDernière intervention 5 septembre 2006 5 déc. 2003 à 23:49
Il y a $HTTP_USER_AGENT qui te permetde récupérer le navigateur (on peut récupérer autre chose avec cette variable mais je sais pas quoi)
Pour le pays ils doivent utiliser l'ip (je crois que le dernier nombre de l'ip donne le pay ou un truc comme ca)
19 mai 2005 à 10:23
25 mars 2005 à 19:51
le code que je te cole ici est tiré d'un autre site, je l'ai modifier pour qu'il ne me donne que ce que j'ai besoin . c'est a dire la variable $pays
__________________________________
<?
// ********************************************
// Initiation des variables
// ********************************************
$whois_ip_demande=getenv("REMOTE_ADDR");
// ********************************************
// Vérification des champs vide
// ********************************************
if (empty($whois_ip_demande))
whois_erreur(1);
// ********************************************
// Résolution du nom et conformité de l'IP selectionné
// ********************************************
if (ip2long($whois_ip_demande)==-1) // Si ce n'est pas une IP
{
$nom_correspondant=gethostbyname($whois_ip_demande); // Alors résolution du nom
if ($nom_correspondant!=$whois_ip_demande) // Si il a résolut le nom
$whois_ip_demande=$nom_correspondant; // Récupération de l'ip résolut
else
whois_erreur(2);
}
// ********************************************
// Transforme les saisies tel que 10.10..4 en 10.10.0.4
// ********************************************
$inetaddr=ip2long($whois_ip_demande);
$whois_ip_demande=long2ip($inetaddr);
// ********************************************
// Appel de la fonction connexion
// ********************************************
$buffer=connexion("whois.ripe.net",$whois_ip_demande);
$serveur_ayant_repondu="whois.ripe.net";
// ********************************************
// Vérifie si on est sur le bon serveur
// ********************************************
if (eregi("www.iana.org", $buffer))
{
$buffer=connexion("whois.arin.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.arin.net";
}
elseif (eregi("whois.apnic.net", $buffer))
{
$buffer=connexion("whois.apnic.net",$whois_ip_demande);
$serveur_ayant_repondu = "whois.apnic.net";
}
elseif (eregi("whois.registro.br", $buffer))
{
$buffer=connexion("whois.registro.br",$whois_ip_demande);
$serveur_ayant_repondu = "whois.registro.br";
}
elseif (eregi("nic.ad.jp", $buffer))
{
$buffer=connexion("whois.nic.ad.jp",$whois_ip_demande);
}
// ********************************************
// Intégre les retours charriot
// ********************************************
$buffer2 = nl2br($buffer);
// ********************************************
// Affiche le resultat
// ********************************************
$text = explode("
", $buffer2);
for ($i=0; $i <50; $i++)
{
if (stristr($text[$i], "country"))
{
$pays_ = explode(" ", $text[$i]);
$pays = $pays_[6];
}
else { continue;}
}
// ********************************************
// Fin du script général
// ********************************************
//fin_du_script();
// ********************************************
// Fonction de connexion whois
// ********************************************
function connexion($serveur,$ip_recherche)
{
// ********************************************
// Ouverture de la session TCP
// ********************************************
$socket=fsockopen($serveur, 43);
if ($socket!=0)
{
// ********************************************
// Envoi de l'IP demandé
// ********************************************
fwrite($socket, "$ip_recherche\n");
// ********************************************
// Receptionne dans buffer la réponse
// ********************************************
while (feof($socket)==0)
$tampon = $tampon . fgets($socket, 1000); // Le . signifie concatenation
// ********************************************
// Ferme la session TCP
// ********************************************
fclose($socket);
}
else
// ********************************************
// Sortie du script
// ********************************************
whois_erreur(3);
return ($tampon);
}
// ********************************************
// Fonction d'affichage de l'erreur de saisie
// ********************************************
function whois_erreur($erreur) // $erreur représente le numéro d'erreur.
{
// ********************************************
// Message personnalisé
// ********************************************
if ($erreur==1)
echo'null';
elseif ($erreur==2)
echo'null';
elseif ($erreur==3)
echo'null';
// ********************************************
// Fin du script général
// ********************************************
fin_du_script();
}
function fin_du_script()
{
// ********************************************
// Fin du script général
// ********************************************
exit(0);
}
?>
________________________________
8 déc. 2003 à 14:43
6 déc. 2003 à 20:47
Pour ta question :
Grace à $HTTP_USER_AGENT tu peux récupérer la langue et la pays de l'utilisateur, ainsi que le navigateur. et l'OS
Pour cela, il faut faire des extractions du type "fr -> france" "ie 6.0 -> internetExplorer6.0" etc.
6 déc. 2003 à 14:00
Il génère une balise image, dont l'adresse correspond à une page php.
La page php enregistre les infos par la methode GET puis renvois une image.
C'est la seul methode que je connais.
5 déc. 2003 à 23:49
Pour le pays ils doivent utiliser l'ip (je crois que le dernier nombre de l'ip donne le pay ou un truc comme ca)
l'ip tu l'a avec $REMOTE_ADDR
pour le reste je sais pas
désolé