Facebook API -登录错误PHP SDK -一个代码参数被添加在url和什么都没有发生


Facebook API - Login error PHP SDK - A ?code parameter is added in the url and nothing happens

我使用facebook登录我的网站与API v2.4应用程序,PHP 5.4安装在服务器上,但我有一个很大的错误与facebook的身份验证。

当我按下按钮"Login with facebook"而不是重定向我,使会话没有发生,一个?code=XXXXXXXXXX参数被添加到URL。

我做了一个视频来更好地理解:https://www.youtube.com/watch?v=1Os6Zz-4hjQ

下面是我的facebook代码:
require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );
require_once( 'Facebook/Entities/AccessToken.php' );
require_once( 'Facebook/Entities/SignedRequest.php' );
require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookOtherException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphSessionInfo.php' );
use Facebook'HttpClients'FacebookHttpable;
use Facebook'HttpClients'FacebookCurl;
use Facebook'HttpClients'FacebookCurlHttpClient;
use Facebook'Entities'AccessToken;
use Facebook'Entities'SignedRequest;
use Facebook'FacebookSession;
use Facebook'FacebookRedirectLoginHelper;
use Facebook'FacebookRequest;
use Facebook'FacebookResponse;
use Facebook'FacebookSDKException;
use Facebook'FacebookRequestException;
use Facebook'FacebookOtherException;
use Facebook'FacebookAuthorizationException;
use Facebook'GraphObject;
use Facebook'GraphSessionInfo;
 //1.Start Session
  session_start();
  require_once "config.php";
  $app_id = 'XXXXXXXXXXXXXXX';
  $app_secret = 'YYYYYYYYYYYYYYYYYYYYYYYYYY';
  $redirect_url='http://myrealwebsiteurl.com/';
  FacebookSession::setDefaultApplication($app_id,$app_secret);
  $helper = new FacebookRedirectLoginHelper($redirect_url);
  $session = $helper->getSessionFromRedirect();
  if(isset($session)){
    $request = new FacebookRequest($session, 'GET', '/me');
    $response = $request->execute();
    $graph = $response->getGraphObject(GraphUser::className());
    $name = $graph->getProperty('id');
    $full = $graph->getProperty('name');    

    $full1=explode(' ', $full);
    $first=$full1[0];
    $rest=ltrim($full, $first.' ');

    $fname = $first;
    $lname = $rest;
    $_SESSION["fb"] = $name;
    $check = mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
    $row=mysql_fetch_array($check);
$ip_addr = $_SERVER['REMOTE_ADDR'];
if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
    $ip_addr = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
}   
$geoplugin = unserialize(file_get_contents('http://www.geoplugin.net/php.gp?ip='.$ip_addr ) );
        if ( is_numeric($geoplugin['geoplugin_latitude']) && is_numeric($geoplugin['geoplugin_longitude']) ) {
            $lat2 = $geoplugin['geoplugin_latitude'];
            $lon2 = $geoplugin['geoplugin_longitude'];
}
                        mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
                        mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
                        mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
    if ($row['yyy] != $_SESSION["fb"] || $row['ttt'] == '') {
    header("Location: fbregister.php");
mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
mysql_query(XXXXXXXXXXXXXXXXXXXXXXX);
    }
    else    {
        header("Location: profile.php");        
    }
  }
  else  {
       $loginUrl = $helper->getLoginUrl(array(
       scope => 'email'
       ));
      echo '<a class="zocial facebook" id="zocial facebook" style="color: white; left: calc(10% - 10px); top: calc(48% - 5px); position: relative;" href='.$loginUrl.'>Login with facebook</a>';
  }
 ?>

除了mysql_query被弃用这一事实外,试着打开错误报告,看看发生了什么…

ini_set("display_errors", 1);
error_reporting(E_ALL);