1

我正在实现 facebook 的 PHP SDK 进行身份验证我在这里。我已经在网上搜索并找到了很多关于此的教程。喜欢将 Facebook PHP SDK 3 与 CodeIgniter 一起使用

我已修改 base_facebook.php 以返回www.skillpaper.com/auth/fb_register返回

$this->facebook->getLoginUrl()

当我在登录模式中单击“与 Facebook 连接”时,facebook auth 弹出窗口会成功重定向到我给定的 url。IEwww.skillpaper.com/auth/fb_register

我的代码就像在身份验证控制器中一样:

public function fb_register(){

        $userId = $this->facebook->getUser();
        if($userId != 0){
            // Get user's data and print it
            $user = $this->facebook->api('/me');
            var_dump($user);
        }else{ echo "No user";}
}

我每次都得到“没有用户”!我错过了什么?我不想为此使用任何 JS API。有什么建议吗?

提前致谢。

4

1 回答 1

1

请从https://developers.facebook.com/docs/reference/php/下载 Facebook PHP SDK 现在将 src 文件夹放入 application/controller 文件夹。像这样调用控制器任何函数:-

    require 'src/facebook.php';
    $appId = FBAPPID;
    $secretkey = FBSECRETKEY;

    $facebook = new Facebook(array(
  'appId'  => $appId,
  'secret' => $secretkey,
    ));
    $fb['facebook']=$facebook;
    $facebook_user = $facebook->getUser();
    $fb['facebook_user']=$facebook_user;
    if ($facebook_user) {
  try {
    $user_profile = $facebook->api('/me');
    //$fb['logoutUrl'] = $facebook->getLogoutUrl();

  } catch (FacebookApiException $e) {
    error_log($e);
    $facebook_user = null;
    $this->load->view('Your Page');

  }
    }else {
        $data['loginUrl'] = $facebook->getLoginUrl(array(
        'scope'         => 'user_about_me,email,user_birthday,friends_birthday,publish_stream,manage_pages,offline_access'              
        ));
        $this->load->view('Your Page');
    }
于 2013-07-29T04:36:37.547 回答