Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Facebook API:正在登录,但仍不工作_Php_Facebook_Api - Fatal编程技术网

Php Facebook API:正在登录,但仍不工作

Php Facebook API:正在登录,但仍不工作,php,facebook,api,Php,Facebook,Api,我使用的是用PHP编写的Facebook API连接脚本(由Facebook提供)。一切正常,它会生成登录URL,并在我登录时将我重定向回网站 但是,$user变量似乎没有定义 有没有人经历过类似的问题?在Facebook应用统计页面中,我可以看到该应用已被使用 更新-代码: <?php $app_id = "xxxxxxxxxxxxxx"; $app_secret = "xxxxxxxxxxxxx"; $site_url = "http://xxx"; try{

我使用的是用PHP编写的Facebook API连接脚本(由Facebook提供)。一切正常,它会生成登录URL,并在我登录时将我重定向回网站

但是,$user变量似乎没有定义

有没有人经历过类似的问题?在Facebook应用统计页面中,我可以看到该应用已被使用

更新-代码:

<?php

$app_id     = "xxxxxxxxxxxxxx";
$app_secret = "xxxxxxxxxxxxx";
$site_url   = "http://xxx";

try{
    include_once "src/facebook.php";
}catch(Exception $e){
    error_log($e);
}

$facebook = new Facebook(array(
    'appId'     => $app_id,
    'secret'    => $app_secret
    ));

 if($user = $facebook->getUser())
 {
     echo 'ok';
 }
 else
 {
 }

if($user){
//==================== Single query method ======================================
    try{
        // Proceed knowing you have a logged in user who's authenticated.
        $user_profile = $facebook->api('/me');
    }catch(FacebookApiException $e){
        error_log($e);
        $user = NULL;
    }
//==================== Single query method ends =================================
}

if($user){
    // Get logout URL
    $logoutUrl = $facebook->getLogoutUrl();
}else{
    // Get login URL
    $loginUrl = $facebook->getLoginUrl(array(
        'scope'     => 'email,user_birthday,user_about_me',
        'redirect_uri'  => $site_url . '/auth_complete.php',
        ));
}

if($user){
    // Proceed knowing you have a logged in user who has a valid session.

//========= Batch requests over the Facebook Graph API using the PHP-SDK ========
    // Save your method calls into an array
    $queries = array(
        array('method' => 'GET', 'relative_url' => '/'.$user),
        array('method' => 'GET', 'relative_url' => '/'.$user.'/home?limit=50'),
        array('method' => 'GET', 'relative_url' => '/'.$user.'/friends'),
        array('method' => 'GET', 'relative_url' => '/'.$user.'/photos?limit=6'),
        );

    // POST your queries to the batch endpoint on the graph.
    try{
        $batchResponse = $facebook->api('?batch='.json_encode($queries), 'POST');
    }catch(Exception $o){
        error_log($o);
    }

    //Return values are indexed in order of the original array, content is in ['body'] as a JSON
    //string. Decode for use as a PHP array.
    $user_info      = json_decode($batchResponse[0]['body'], TRUE);
    $feed           = json_decode($batchResponse[1]['body'], TRUE);
    $friends_list       = json_decode($batchResponse[2]['body'], TRUE);
    $photos         = json_decode($batchResponse[3]['body'], TRUE);
//========= Batch requests over the Facebook Graph API using the PHP-SDK ends =====


}

?>

用户尚未授权该应用程序。试试这样的-

$user_id = $facebook->getUser();
echo $uid;

if($user_id){
  try {
    $user_profile = $facebook->api('/me');

  } catch (FacebookApiException $e) {
    error_log($e);
    $user_id = null;
  }
}else{
    $login_url = $facebook->getLoginUrl();
    echo("<br>login url=".$login_url);
};
$user\u id=$facebook->getUser();
echo$uid;
if($user\u id){
试一试{
$user_profile=$facebook->api('/me');
}捕获(FacebookApiException$e){
错误日志($e);
$user\u id=null;
}
}否则{
$login_url=$facebook->getLoginUrl();
echo(“
登录url=”.$login\u url); };
用户尚未授权该应用程序。试试这样的-

$user_id = $facebook->getUser();
echo $uid;

if($user_id){
  try {
    $user_profile = $facebook->api('/me');

  } catch (FacebookApiException $e) {
    error_log($e);
    $user_id = null;
  }
}else{
    $login_url = $facebook->getLoginUrl();
    echo("<br>login url=".$login_url);
};
$user\u id=$facebook->getUser();
echo$uid;
if($user\u id){
试一试{
$user_profile=$facebook->api('/me');
}捕获(FacebookApiException$e){
错误日志($e);
$user\u id=null;
}
}否则{
$login_url=$facebook->getLoginUrl();
echo(“
登录url=”.$login\u url); };
我们的一个FB应用程序以前工作了几个月,现在遇到了您提到的问题$fb_用户现在返回未定义=(

我们的一个FB应用程序以前工作了几个月,现在遇到了您提到的问题。$FB_用户现在返回未定义。=(

更新您的SDK,听起来您几周前就遇到了证书问题


您可以在更新SDK的网站上找到最新版本,听起来您几周前就遇到了证书问题



您可以在

上找到最新版本。我不完全确定它为什么有效,但我已将用户重定向到包含Javascript SDK的页面(http://developers.facebook.com/docs/reference/javascript/),现在它工作了!

我不完全确定它为什么工作,但我将用户重定向到包含Javascript SDK的页面(http://developers.facebook.com/docs/reference/javascript/),现在它开始工作了!

这看起来像我当前使用的代码。它在一个名为“fbaccess.php”的文件中。引发了什么异常?您能否使用已获得的令牌在Graph Api Explorer中验证此异常?Graph Api Explorer:除此部分外,其他所有部分都正常运行…$user=$facebook->getUser();所以我很困惑。如果网站无法访问Facebook API,整个事情难道不应该停止工作吗?它必须。你的代码有一些问题。如果你能在这里共享你的代码,就会更清楚。这看起来像我当前使用的代码。它在一个名为“fbaccess.php”的文件中。引发了什么异常?您能否使用已获得的令牌在Graph Api Explorer中验证此异常?Graph Api Explorer:除此部分外,其他所有部分都正常运行…$user=$facebook->getUser();所以我很困惑。如果网站无法访问Facebook API,整个过程难道不应该停止吗?它必须停止。你的代码有一些问题。如果你可以在这里共享代码,就会更清楚。共享代码看看怎么样?出于安全原因,别忘了删除你的应用程序密钥!嘿,你发现了是哪个密码吗问题?分享你的代码看看怎么样?出于安全原因,别忘了删除你的应用程序密钥!嘿,你发现问题出在哪里了吗?完全相同的脚本在另一个网站上为我工作,这让我更加困惑…完全相同的脚本在另一个网站上为我工作,这让我更加困惑。…我刚刚尝试更新证书(以及facebook.php和base_facebook.php)。即使我登录,$user变量仍然是0。我刚刚尝试更新证书(以及facebook.php和base_facebook.php)。即使我登录,$user变量仍然是0。