2012-08-08 4 views
1

facebook php SDK를 사용하여 사용자를 웹 사이트에 로그인합니다. 또한 다음과 같은 사용 권한을 사용자에게 요청합니다.사용자가 내 Facebook 페이지의 팬인지 확인하십시오.

user_likes,publish_actions,email,offline_access,user_birthday 

이제 사용자가 내 페이스 북 페이지의 팬인지 확인하고 있습니다.

$isFan = $facebook->api(array(
      "method" => "pages.isFan", 
      "page_id" => 'xxxxxxxxxxx' 
      )); 

문제는 사용자의 Facebook 세션이 위의 코드를 초과하면 사용자가 이전에 페이지를 좋아한다고해도 false를 반환하는 것입니다. 이제 예를 들어 내 팬 페이지에 액세스 토큰이 있는지 확인하는 방법이 있습니다. 오프라인 액세스를 사용하고 있으므로 60 일 동안 유효한 사용자 액세스 토큰을 보유하고 있으며 다시 로그인하도록 요청할 것입니다.

답변

0

FQL 쿼리는 page_fan 테이블에서 실행할 수 있습니다.

$isFan = $facebook->api(array(
    "method" => "fql.query", 
    "query" => "SELECT uid FROM page_fan WHERE page_id = '<YOUR PAGE ID>' AND uid = '<UID>" 
)); 

또한 유용한 -이 내용은 가정 올바른 http://developers.facebook.com/docs/reference/php/facebook-api/

+0

당신은 user_likes 권한이있는 사용자는 인증됩니다. –

관련 문제