2016-02-28 186 views
0

我有facebook登錄問題。我有我的PHP起始頁面的登錄鏈接:Facebook的PHP SDK登錄有時失敗

$facebook = new FacebookRedirectLoginHelper($redirect_url); 
$permissions = array('email'); 
$loginUrl = $facebook->getLoginUrl($permissions); 

然後,我有我的這個代碼重定向頁面:

$helper = new FacebookRedirectLoginHelper($redirect_url); 

try 
{ 
    $session = $helper->getSessionFromRedirect(); 
} 
catch(FacebookRequestException $ex) 
{ 
    // When Facebook returns an error 
} 
catch(Exception $ex) 
{ 
    // When validation fails or other local issues 
} 


// see if we have a session 
if (isset($session)) 
{ 
    // I'm logged in 
} 
else 
{ 
    // got no session 
} 

爲我的用戶的10%左右,他們沒有得到一個$會話。所有其他人可以登錄沒有問題,但不是這10%。爲什麼不呢?有什麼辦法找出原因?

回答

-1

據我所知,SDK已經更新,我現在用這個和它的正常工作:FB SDK Login - Php

+0

謝謝你的提示,我更新到新的SDK,但我仍然有用戶約20%誰不能登錄。使用新的SDK,我得到錯誤消息「跨站點請求僞造驗證失敗。」URL和會話中的「狀態」參數不匹配「我檢查了$ _SERVER ['HTTP_HOST']的值,但該URL似乎是好吧,我讀到mypage.com和www.mypage.com之間存在差異。如果(!session_id())session_start();我使用 。 } 位於兩個腳本的頂部,但我仍然遇到了一些用戶的錯誤。 – computermaus