Facebook GetUser()返回0,没有任何我的代码更改

问题描述:

我有用户登录在我的网站上实现。到目前为止,这工作很好。当我尝试使用Facebook帐户登录时,我总是从GetUser()中获得0。我尝试了不同的Web浏览器,更新PHP SDK到最新版本,但仍然无法正常工作。任何线索?Facebook GetUser()返回0,没有任何我的代码更改

$facebook = new Facebook(array(
    'appId' => 'my APP ID', 
    'secret' => 'my Secret', 
    'cookie' => false, // enable optional cookie support 
)); 

    $user = $facebook->getUser(); 
    if ($user) { 
    try { 
     // Proceed knowing you have a logged in user who's authenticated. 
     $user_profile = $facebook->api('/me'); 
     $likes = $facebook->api("/me/likes/ID HIDDEN"); 
     if (!isset($_SESSION['prijavljen'])) { 
     $_SESSION['prijavljen'] = True; 
     } 
     if (!empty($likes['data'])) $fblike = true; else $fblike = false;  
    } catch (FacebookApiException $e) { 
     error_log($e); 
     $user = null; 
    } 
    } 
    // Login or logout url will be needed depending on current user state. 
    if ($user) { 
    //$logoutUrl = $facebook->getLogoutUrl(); 
    $logoutUrl = $facebook->getLogoutUrl(array('next' => 'my URL')); 
    } else { 
    $params = array('scope' => 'email,user_birthday,user_education_history,user_hometown,user_likes', 'redirect_uri' => curPageURL()); 
    $loginUrl = $facebook->getLoginUrl($params); 
    } 
+0

你检查了[Google](https://www.google.com/search?%7Bgoogle:acceptedSuggestion%7Doq=facebook+getuser+returns+0&%7Bgoogle:instantFieldTrialGroupParameter%7Dsourceid=chrome&ie=UTF-8&q=facebook + getuser +返回+ 0&hl = en)这个非常常见的问题? –

+0

是的,我检查了谷歌,但没有解决方案的作品:( – B0ris

服务器上的PHP版本最近更新了吗?您可以尝试this fix并查看getUser()函数是否会再次开始为您工作。

+0

我将PHP版本从PHP 4更改为PHP 3,它看起来它现在工作。 – B0ris