Recuperer adresse ip: prq une fonction compliquee?

Signaler
Messages postés
68
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
16 février 2006
-
Messages postés
3
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
15 juin 2005
-
voici une fonction trouvée sur le net:
[code]function get_ip() {
if($_SERVER) {
if($_SERVER['HTTP_X_FORWARDED_FOR'])
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
elseif($_SERVER['HTTP_CLIENT_IP'])
$ip = $_SERVER['HTTP_CLIENT_IP'];
else
$ip = $_SERVER['REMOTE_ADDR'];
}
else {
if(getenv('HTTP_X_FORWARDED_FOR'))
$ip = getenv('HTTP_X_FORWARDED_FOR');
elseif(getenv('HTTP_CLIENT_IP'))
$ip = getenv('HTTP_CLIENT_IP');
else
$ip = getenv('REMOTE_ADDR');
}
return $ip;
}[code]

La question est simple: à quoi ça sert tout ça??? moi ds mes precedents essais je faisais juste $_SERVER['REMOTE_ADDR'] et hop j'avais l'IP, alors prq se compliquer avec tt ça? Etant intrigué, j'ai un peu cherché et je me dis que c'est surement pr tenir compte des différentes versions de PHP, du fait que le gars est derriere un proxy ou non, etc etc?
mais ça reste flou :shy) , alors si une ame charitable qui comprend chaque ligne du code pourrait eclairer ma lanterne, ça serait très cool :)

Merci!

_______________
www.arsenal.fr.st

1 réponse

Messages postés
3
Date d'inscription
samedi 21 août 2004
Statut
Membre
Dernière intervention
15 juin 2005

Coucou Brice,

je suis pas spécialiste mais je crois pas que c'est simplement des façons différentes d'obtenir l'IP en fonction de la requête :
-depuis l'entete 'X Forwarded For' rajouter par certains proxys
-depuis une autre entête
-ou basiquement l'IP du poste.

Je me rappelle pas de tous les détails (j'ai juste lu vite fait l'article sans encore avoir le temps de faire une série de tests) mais si tu as l'occasion de lire "spoffer son Ip sur les forums" du manuel Hackademy #9, je pense que tu comprendras mieux les histoire d'entête Forwarded.
Moi perso, je vais prendre ce code dès que possible mais changer les conditions ElseIF pour afficher tous les résultats.

AxlSworD
P.s: Gally , c'est d'la balle