Anonymus
samedi 1 mai 2004 à 09:14
Les données que tu peux récupérer sont des variables d'environnement.
Tu y a accès avec la fonction getenv(VARIABLE);
Ces variables sont nombreuses, et dispo ici :
http://hoohoo.ncsa.uiuc.edu/cgi/env.htmlPour ce que tu cherches spécifiquement, voici un morceau de code :
CODE
<?
echo "<br>trouver l'ip par les variables d'environnenemt : <b>".getenv("REMOTE_ADDR")."</b>";
echo "<br>trouver le host par les variables d'environnenemt : <b>-".getenv("REMOTE_HOST")."</b>";
echo"<br>";
echo "<br>trouver le host par la fonction gethostbyaddr, et le paramètre getenv : <b>".gethostbyaddr(getenv("REMOTE_ADDR"))."</b>";
echo"<br> Puisque l'on a le host, on peut donc chercher l'ip correspondante;) avec la fonction gethostbyname : <b>".gethostbyname(gethostbyaddr(getenv("REMOTE_ADDR")))."</b>";
echo"<p>===============================";
echo"<br>Afficher l'adresse de quelqu'un, sous forme xxx.xxx.monfournisseur.tld";
echo"<br> Avec explode :";
$temp = explode(".",gethostbyaddr(getenv("REMOTE_ADDR")));
echo "<br><b>xxx.xxx.".$temp[2].".".$temp[3]."</b>";
echo"<p> La même chose, en expression régulière :";
echo "<br><b>".preg_replace("/([a-z0-9]+).([a-z0-9]+).([a-z0-9]+).([a-z0-9]+)/i","xxx.xxx.\\3.\\4",gethostbyaddr(getenv("REMOTE_ADDR")))."</b>";
?>
On ne peut le tester en local , c'est pourquoi il est sur internet, ici :
http://www.labonneadresse.com/test_ip.phpEt la copie d'écran, qui, pour moi sera différent de la tienne (normalement ) :
CODE
trouver l'ip par les variables d'environnenemt : 172.206.121.52
trouver le host par les variables d'environnenemt : -
trouver le host par la fonction gethostbyaddr, et le paramètre getenv : ACCE7934.ipt.aol.com
Puisque l'on a le host, on peut donc chercher l'ip correspondante;) avec la fonction gethostbyname : 172.206.121.52
===============================
Afficher l'adresse de quelqu'un, sous forme xxx.xxx.monfournisseur.tld
Avec explode :
xxx.xxx.aol.com
La même chose, en expression régulière :
xxx.xxx.aol.com
Voilà,
Anonymus.