2012-05-04 16 views
0

嘿即時通訊開發一個FB畫布應用程序,這個應用程序就像一個控制面板,如果你點擊一個按鈕,你去應用程序的其他部分,等等等,Facebook的PHP SDK 3.x,有時不給我用戶ID

我使用Facebook的用戶名,以確定用戶是否可以使用應用程序,因爲只是爲了幾個人,所以我的問題是,Facebook有時會給我的用戶ID,有時不會,我使用這個簡單的代碼

$facebook = new Facebook(array(
    'appId' => 'YOUR_APP_ID', 
    'secret' => 'YOUR_APP_SECRET', 
    'cookie' => true, 

)); 

// Get User ID 
$user = $facebook->getUser(); 

if ($user){ $auth=true; }else{ $auth=false; } 

這個代碼是「config.php文件」,我包括每一個文件裏面,然後我使用$身份驗證,以確定用戶可以看到informati對我而言,它始終在主頁面中工作,但有時當我跳轉到應用程序的其他頁面(包括config.php)時,它不會給我userId,奇怪的部分是它有時會

我試圖存儲在一個會話,但我意識到,當它不能顯示的用戶ID,心不是太任何會話:S

回答

0

編輯:對不起,我沒有注意到你正在開發一個應用程序的畫布。但是,我要離開這裏告訴你,提取用戶名是不夠的。

處理Facebook身份驗證的最簡單方法可能是將JS-lib and a login-button集成到您的網站上。然後,php SDK將「自動識別」auth會話,以便您不必:)

在另一個說明中,使用該ID不足以驗證用戶身份。您應該使用圖API獲取me,以確保用戶已驗證您的應用:

try { 
    $user_profile = $facebook->api('/me','GET'); 
} catch (Exception $e) { 
    //Not authenticated 
} 
相關問題