JeuWeb - Crée ton jeu par navigateur

Version complète : Récupérer l'IP des utilisateurs
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Je rencontre un autre probleme, mais cette fois en php.

J'aimerai récupérer l'adresse ip des utilisateurs.
J'avais une fonction qui fonctionnais avant mais apparemment c'est obsolète la voici:


Code PHP :
<?php 
           function get_ip
() {
               if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
                   $ip1 = $_SERVER['HTTP_X_FORWARDED_FOR'];
               } elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
                   $ip1 = $_SERVER['HTTP_CLIENT_IP'];
               } else {
                   $ip1 = $_SERVER['REMOTE_ADDR'];
               }
               return $ip1;
           }

           $ip1 = get_ip();

Voici le resultat : "::1"

Comment procédez-vous pour faire cela?

Merci.

<<Edit: Autre problème = autre sujet s. Xenos>>
ça marche, ::1 est simplement to localhost en IPv6 ...
Bonne réponse de niahoo.

Sinon, dans l'implé, array_key_exists sera plus approprié que isset car isset peut renvoyer null pour d'autres raisons qui peuvent échapper à la relecture (par exemple, une faute de frappe isset($SERVER['...']): cela renverra toujours false alors que array_key_exists($SERVER, '...') te diras que $SERVER is undefined et tu pourras corriger l'erreur de typo).

Après, est-ce que ces données, qui viennent du client, sont non-fiables: le client peut très bien faire une requête où il définit X-Forwarded-For: mesGenoux... Il faudrait idéalement checker la bonne syntaxe de la valeur en plus de son existence (de mémoire, il y a des fonctions PHP qui le font, et je dirai que des composants déjà existants peuvent également s'occuper de récupérer l'IP du client).