2012-09-05 2 views
0

페이스 북을 사용하여 특정 권한을 인증하고 빌려주고 있습니다. 스피 젠드 프레임 워크를 사용하여 기능Accesstoken facebook이 (가) 활성화되어 있지 않습니까?

initFacebook(){ 

$db = Application_Model_DB::create(); 
    $db->setTable('users'); 

    Zend_Session::start(); 
    $facebookuser = new Zend_Session_Namespace('facebookUser'); 


    include('../library/Facebook/facebook.php'); 


    $facebook = new Facebook(array(
     'appId' => '282270168507838', 
     'secret' => '*cencor*', 
    )); 
    $accesstoken = $facebook->getAccessToken(); 

    try { 
     $user_profile = $facebook->api('/me?accesstoken='.$accesstoken); 
     $user = $facebook->getUser(); 
     $fbname = $user_profile['name']; 

     $result = $db->fetchAllAsArray('fbid = "'.$user.'"'); 

     if (count($result) == 0) { 
      $db->save(array('fbid'=>$user,'status'=>'standard','name'=>$fbname)); 
     } 
     else { 
       $facebookuser->status = $result[0]['status']; 
       $facebookuser->fbname= $result[0]['name']; 
       $facebookuser->fbuser = $result[0]['fbid']; 


     } 


     } catch (Exception $e) { 
     $user = 0; 
     $facebookuser->error = $accesstoken; 
     $facebookuser->unsetAll(); 

    } 
} 

내에서 내 부트 스트랩 클래스에서이 코드를하지만이 몇 시간 만 약 10 분 동안 작동합니다.

http://www.nicomollema.nl/ 데모가 있습니다. PHP 코드를 사용하기 위해 PHP SDK를 사용하며, 자바 스크립트 SDK를 사용하여 로그인/로그 아웃 버튼을 생성합니다.

오류를 확인하면 다음과 같은 메시지가 표시됩니다. 현재 액세스 토큰을 사용하여 현재 사용자에 대한 정보를 쿼리해야합니다.

내가 알듯이 다음과 같이 할 수 있습니다. $ accesstoken = $ facebook-> getAccessToken(); accesstoken을 얻으려면 어떻게해야 무효가 될 수 있습니까?

답변

0

필자는 큰 실수를 저질렀습니다. JavaScript SDK에서 PHP SDK의 APPID와 다른 APPID를 사용했습니다. 물론 이것들은 동일해야합니다.

관련 문제