调用Facebook登录时出错


Error calling the Facebook Login

我是一个新手,还是一个初学者。

我不确定如何为会话调用FaceBook,如果有任何代码。然而,我已经添加了这个在所有的页面,我想我的facebook被加载。我相信是Facebook SDK。例如,我在register.php和login.php中添加以下代码:

<body>
<script>
  window.fbAsyncInit = function() {
    FB.init({
      appId      : '<?php echo $config['appId']; ?>',
      xfbml      : true,
      version    : 'v2.4'
    });
  };
  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/en_US/sdk.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script>

我还在我的Config .php中添加了这个,我相信它是FB登录的配置。

$config = array();

然而,每次我试图点击我的login.php中的Facebook按钮时,都会出现错误,例如

致命错误:在非对象上调用成员函数getLoginUrl()in C:'wamp'www'sggrocer'loginFb.php on line 13

loginFB.php

<?php   
    session_start();
    include('ajax-helper/config.php');
    $_SESSION[$PROJECT_NAME . '-loginFb'] = true;
    unset($_SESSION[$PROJECT_NAME . '-logout']);
    $params = array(
      'scope' => 'email, user_birthday',
      'redirect_uri' => $base_url . "http://localhost/sggrocer/",
    );
    $loginUrl = $facebook->getLoginUrl($params);
    header('Location:' . $loginUrl);
?>

这是我的login.php:https://jsfiddle.net/Snurainiyakob/V4u5X/872/

, UI如下:此处输入图像描述

您没有初始化您的$facebook -object。

请在这里查看官方文档。它提供了很好的入门示例。

$fb = new Facebook'Facebook([
  'app_id' => '1475470649428121',
  'app_secret' => '{your-app-secret}',
  'default_graph_version' => 'v2.4',
]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email']; // Optional permissions
$loginUrl = $helper->getLoginUrl('https://example.com/fb-callback.php', $permissions);
echo '<a href="' . htmlspecialchars($loginUrl) . '">Log in with Facebook!</a>';