Recuperer adresse ip: prq une fonction compliquee?

brice0306 Messages postés 68 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 16 février 2006 - 13 févr. 2004 à 15:42
axlsword Messages postés 3 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 15 juin 2005 - 22 févr. 2005 à 03:12
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

axlsword Messages postés 3 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 15 juin 2005
22 févr. 2005 à 03:12
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
0
Rejoignez-nous