0

我正在尝试创建一个竞赛条目,在进入之前检查用户是否喜欢某个页面。如果他们这样做,它将获取他们的姓名、电子邮件和生日,以获取比赛条目的详细信息。

然而,由于某种原因,我无法让我的 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 似乎没有让我的用户登录。

4

2 回答 2

0

我遇到了同样的问题。我使用了一个示例项目,但无法弄清楚为什么它一直返回 0。在这里尝试了几乎所有相关链接,但没有一个解决它。

解决方案是在示例项目中更新 Facebook 的 SDK 文件。简单又容易错过,

于 2013-08-31T18:18:47.310 回答
0

对于仍在寻找的任何人。这就是我解决问题的方法。我必须确保在任何其他代码之前执行这些代码,所以我将它放到我的 php 文件的最顶部并且它工作。我认为问题在于标头已经发送但我不知道,因为我的 PHP 警告/错误未启用显示。

于 2013-03-28T15:43:22.983 回答