簡體   English   中英

Facebook PHP在“頁面”選項卡中獲取用戶信息,重定向到登錄后,getUser返回0

[英]Facebook PHP Get User information in Page Tab, getUser returns 0 after redirect to login

我正在嘗試創建一個競賽條目,以檢查用戶在進入之前是否喜歡該頁面。 如果他們這樣做,它將獲取他們的姓名,電子郵件和生日以獲取比賽報名詳情。

但是由於某種原因,我無法使我的PHP代碼正常工作。

    <?php
    require 'src/facebook.php';

    // Create our Application instance (replace this with your appId and secret).
  $facebook = new Facebook(array(
    'appId'  => 'XXX',
    'secret' => 'XXXX',
  'cooke' => true
));

// Get User ID

$user = $facebook->getUser();

if ($user) {
  try {
    // Proceed knowing you have a logged in user who's authenticated.
    $me = $facebook->api('/me?fields=likes.target_id(215359398497970),birthday,first_name,last_name,email');
    if($me){
        $first_name = $me['first_name'];
        $last_name = $me['last_name'];
        $email = $me['email'];
        $dob = $me['birthday'];
        die($me);
    } else {
        $likes = false;
    }
  } catch (FacebookApiException $e) {
    die($e);
    error_log($e);
    $user = null;
  }
}

// Login or logout url will be needed depending on current user state.
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
  //echo $loginUrl;
}
?>

由於某種原因,它被卡在重定向循環中,因為loginURL似乎無法登錄我的用戶。

對於仍在尋找的任何人。 這就是我解決問題的方式。 我必須確保在所有其他代碼之前執行了theis代碼,因此我將其插到了php文件的最頂部,並且它起作用了。 我認為問題在於標頭已經發送,但是我沒有意識到,因為未啟用我的PHP警告/錯誤。

我遇到了同樣的問題。 我使用了一個示例項目,卻無法弄清為什么它總是返回0。這里幾乎嘗試了所有相關鏈接,但都沒有解決。

解決方案是在示例項目中更新Facebook的SDK文件。 簡單容易錯過

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM