Partage

Obtenir l'adresse ip d'un internaute facebook

Sujet résolu
Le 19 juillet 2010 à 16:40:58

Salut tout le monde. :)
j'ai commencé à créer des applications facebook et je développe mtn avec le FBML,FQL et FBJS.
Ce que je cherche c'est de savoir comment obtenir l'adresse ip d'une personne qui a accéder à mon application.
y a t-il un moyen.j'ai utilisé la fonction $_SERVER["REMOTE_ADDR"] qui retourne l'adresse ip mais facebook me retourne une adresse "69.63.189.244" qui n'est pas la mienne,apparemment c'est l'adresse ip d'un des serveur du facebook.j'ai essayé à chercher mais en vain.
j'attends de vous des suggestions et merci en avance. :(
Publicité
Le 19 juillet 2010 à 16:40:58
Le 19 juillet 2010 à 16:58:01

Si tu travailles en mode FBML, ça me parait normal, car le client ne se connecte pas directement à ton serveur mais passe par facebook, qui récupère le contenu FBML renvoyé par ton serveur, remplace les balises <fb:...> par des contrôles HTML appropriés et renvoie le résultat au client. Il y a peut-être une fonctionnalité exposée par facebook pour récupérer l'IP du client, mais je ne la connais pas :euh:

En revanche, si tu travailles en mode iframe, le client se connectera directement à ton serveur à travers l'iframe et tu pourras récupérer son IP :)
Le 19 juillet 2010 à 17:09:49

t'as raison Orwell ça marché bien en utilisant Ifram mais le problème c'est avec le FBML j'arrive toujours pas à trouver une solution.merci en tout cas :)
Le 19 juillet 2010 à 17:30:31

Après une recherche, il semblerait que facebook communique l'adresse du client au moment de requêter ton serveur via le header "X-FB-USER-REMOTE-ADDR". Donc essaie $_SERVER["X-FB-USER-REMOTE-ADDR"] pour voir :)
Le 19 juillet 2010 à 18:00:19

$_SERVER["X-FB-USER-REMOTE-ADDR"] n'a aboutit à aucun résultat.
j'ai trouvé une fonction tu peux la tester et me répondre après s'il fonctionne ou pas.
merci beaucoup pour l'aide orwell.
voici la fonction : $ip= array_values($_SERVER).en faite c'est un tableau qui contient une série d'informations (hebergeur,adresse ip...)
Le 19 juillet 2010 à 18:08:37

Je ne peux pas t'aider davantage hélas, je n'ai pas de serveur PHP (et n'ai aucune envie d'en avoir un :p )

Une autre solution évoquée consistait à mettre un lien vers ton serveur sur la page servie par facebook (par exemple une image GIF de 1x1 pixel), et à récupérer l'adresse IP via $_SERVER["REMOTE_ADDR"] au moment de la demande de l'image. C'est moche, mais à défaut de mieux... :-°
Le 19 juillet 2010 à 18:37:26

Bon j'ai déjà dit ça fonctionné avec array_values($_SERVER) mais un problème c'est lorsque j'ajoute cette application dans un anglet de page là vraiment ça ne donne rien.
je suis déçu maintenant
En ce qui concerne ta proposition ça ne marche pas puisque $_SERVER["REMOTE_ADDR"] ne retourne que l'adresse ip du serveur du facebook.
Le 19 juillet 2010 à 18:43:10

Citation : stitox

En ce qui concerne ta proposition ça ne marche pas puisque $_SERVER["REMOTE_ADDR"] ne retourne que l'adresse ip du serveur du facebook.

Je parle d'examiner cette valeur au moment de servir l'image, pas la page de ton application ;)
Le 19 juillet 2010 à 18:48:19

comment ça,je n'ai pas bien compris tu veux dire au moment de la création d'une image par exemple.peux-tu donner svp un exemple illustrant la situation et merci encore une fois.
Le 19 juillet 2010 à 19:00:34

C'est effectivement au moment de la création de l'image que ça se passe.

Dans ton application facebook tu mets un lien vers une image factice, du genre:
<img src="http://www.monserveur.com/blabla/bidon.php?userid=12345" style="visiblity:hidden" />


Et dans ta page bidon.php, tu sers une image dynamiquement (il doit y avoir des tutos pour ça), et tu prends soin au passage de récupérer l'id du client et son ip :)
Le 20 juillet 2010 à 10:06:00

merci Orwell,je vais voir maintenant comment y procéder.

Obtenir l'adresse ip d'un internaute facebook

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
  • Editeur
  • Markdown