【问题标题】:Connect with facebook using PHP SDK in codeigniter在 codeigniter 中使用 PHP SDK 连接 facebook
【发布时间】:2013-07-28 19:06:40
【问题描述】:

我正在实现 facebook 的 PHP SDK 以进行身份​​验证 here。我已经在网上搜索并找到了很多关于此的教程。喜欢Using Facebook PHP SDK 3 with CodeIgniter

我已修改 base_facebook.php 以在

中返回 www.skillpaper.com/auth/fb_register
$this->facebook->getLoginUrl()

当我在登录模式中单击“与 Facebook 连接”并且 facebook auth 弹出窗口出现时,它已成功重定向到我给定的 url。即 www.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。有什么建议吗?

提前致谢。

【问题讨论】:

    标签: php facebook codeigniter authentication


    【解决方案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');
        }
    

    【讨论】:

    • 感谢您的评论。我已经在我的项目中使用该 SDK。我认为我在redirect_url 中遗漏了一些东西。 Facebook 确实在我给定的 URL 中重定向,并在 URL 中使用 CODE=afa213131@w3423213133dsfasdfadf。但在那个页面(重定向 URL)上我无法获得 $facebook->getUser();在他/她给予许可后。
    猜你喜欢
    • 2012-02-10
    • 2011-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 2013-07-11
    • 1970-01-01
    相关资源
    最近更新 更多