2009-11-12 6 views
0

comment puis-je obtenir l'information d'un utilisateur facebook comme nom, pays, etc. sans lui faire se connecter en utilisant fb connect, etc si je connais déjà son identifiant facebook? Je veux dire, est-ce que je peux utiliser le client facebook php pour obtenir ces détails sans demander de connexion si je connais déjà l'identifiant facebook?Obtenir les détails de Facebook

Merci à l'avance :)

Répondre

3

Vous ne pouvez pas obtenir cette information avec juste un identifiant de facebook à moins que la personne qui l'information appartient à fait que l'information du public (qui a presque Noone).

La seule solution que je vois est de demander à vos utilisateurs la permission prolongée "offline_access". Pour autant que je sache, vous ne pouvez le faire qu'à partir d'une application facebook ou via la bibliothèque javascript Facebook Connect (donc pas avec la bibliothèque PHP par exemple). Cela signifie que vous devrez demander aux utilisateurs de se connecter sur facebook via fb: connectez au moins une fois, demandez un accès hors ligne et stocker le facebook sessionKey dans votre base de données locale. Étant donné que vous disposez désormais d'un accès hors connexion, la session sessionKey de facebook n'expirera pas et vous pourrez vous connecter au serveur sans que l'utilisateur ne soit présent.

Voilà comment je mis en œuvre du côté du serveur php après avoir atteint la session permanente:

$this->fb = new Facebook($settings["api_key"], $settings["secret"], false, true); 
$this->fb->user = $facebookUserId; 
$this->fb->api_client->session_key = $sessionKey; 
$this->fb->api_client->set_user($facebookUserId); 
0

La seule autre façon d'obtenir une information des utilisateurs privés est que si vous avez une application et que l'utilisateur a donné accès. Ensuite, vous pouvez saisir n'importe quelle donnée en utilisant une requête FQL.

$facebook->api_client->fql_query(
     "SELECT first_name, last_name, location 
     FROM user 
     WHERE uid={$userid}, 
     AND is_app_user;" 
    ); 
Questions connexes