Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.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
Facebook PHP SDK/Graph API-返回我的姓名/信息,但不返回其他人?_Php_Facebook Graph Api_Facebook Php Sdk - Fatal编程技术网

Facebook PHP SDK/Graph API-返回我的姓名/信息,但不返回其他人?

Facebook PHP SDK/Graph API-返回我的姓名/信息,但不返回其他人?,php,facebook-graph-api,facebook-php-sdk,Php,Facebook Graph Api,Facebook Php Sdk,我正在尝试使用Graph API和PHPSDK for Facebook来尝试返回当前用户名,但我只是幸运地发现它显示了我的名字。这是非常直截了当的,了解Graph API的人只要看一下我正在使用的代码就可以帮我解决问题 require 'facebook.php'; $appid=get_post_meta($thisID,'_EFBPDAppID',true); $appsec=get_post_meta($thisID,'_EFBPDAppSec',true); $facebook =

我正在尝试使用Graph API和PHPSDK for Facebook来尝试返回当前用户名,但我只是幸运地发现它显示了我的名字。这是非常直截了当的,了解Graph API的人只要看一下我正在使用的代码就可以帮我解决问题

require 'facebook.php';

$appid=get_post_meta($thisID,'_EFBPDAppID',true);
$appsec=get_post_meta($thisID,'_EFBPDAppSec',true);
$facebook = new Facebook(array(
  'appId'  => $appid,
  'secret' => $appsec,
  'cookie' => true
));
$user = $facebook->getUser();
if ($user) {
  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;
  }
}
然后我使用这个:
echo$user_profile['name']
显示用户名,但它仅显示我的姓名。在任何其他配置文件上,它只显示变量为空的位置。在我的个人资料上,它显示了我的名字。我还使用了
print\r($user)并显示我的ID,但对于任何其他配置文件,它显示
0

用户是否需要对自己进行身份验证,或者是否应该已经有一个包含此信息的会话?如果有会话信息,如何获取会话信息


任何能帮忙的人我都会非常感激。谢谢。

为了安全和隐私,Facebook用户必须登录并允许当前应用程序访问其帐户信息。您可以使用不同的SDK来实现这一点。大多数人使用Javascript,但我个人更喜欢PHP。HTML中的简单实现如下所示:

<a href="<?php echo $this->facebook->getLoginUrl(array('next' => "http://www.yourdomain.com/facebooklogin_success", 'req_perms' => 'email,read_stream,publish_stream,offline_access'))?>">Login to Facebook</a>

如果对您有效,请告诉我。

为了安全和隐私,Facebook用户必须登录并允许当前应用程序访问其帐户信息。您可以使用不同的SDK来实现这一点。大多数人使用Javascript,但我个人更喜欢PHP。HTML中的简单实现如下所示:

<a href="<?php echo $this->facebook->getLoginUrl(array('next' => "http://www.yourdomain.com/facebooklogin_success", 'req_perms' => 'email,read_stream,publish_stream,offline_access'))?>">Login to Facebook</a>
如果适合您,请告诉我。

用户必须对要创建的应用程序进行身份验证

之后,facebook将使用access_令牌重定向(该过程称为回调)

保存访问令牌和用户id,以便您无需登录facebook即可自动访问数据或发布消息。

用户必须对要创建的应用程序进行身份验证

之后,facebook将使用access_令牌重定向(该过程称为回调)


保存访问令牌和用户id,这样您就可以在不登录facebook的情况下自动访问数据或发布消息。

我已经纠正了您的问题。我用的是一个。它可以工作,但正在开发中

您必须首先授权用户并获取其用户ID。之后,只需将“我”替换为用户ID即可

<?php
    require_once 'facebook-php-sdk/src/facebook.php';
    $facebook = new Facebook(array(
        'appId' => '[your app id]',
        'secret' => '[your app secreat]',
        'cookie' => true,
    ));

    // Then authorize the current user in the way you desire 
    // get his user_id
    $user_profile = $facebook->api('/[the user's user id]');

    echo $user_profile['name'];
?> 

我已经纠正了你的问题。我用的是一个。它可以工作,但正在开发中

您必须首先授权用户并获取其用户ID。之后,只需将“我”替换为用户ID即可

<?php
    require_once 'facebook-php-sdk/src/facebook.php';
    $facebook = new Facebook(array(
        'appId' => '[your app id]',
        'secret' => '[your app secreat]',
        'cookie' => true,
    ));

    // Then authorize the current user in the way you desire 
    // get his user_id
    $user_profile = $facebook->api('/[the user's user id]');

    echo $user_profile['name'];
?> 

您的用户需要登录您的应用程序,登录facebook并授权您的应用程序访问这些详细信息,您无法访问其他人
$user\u profile['name']
会话您的用户需要登录您的应用程序,登录facebook并授权您的应用程序访问这些详细信息,您无法访问其他人
$user\u profile['name']
sessiontank you。我很确定用户必须验证应用程序,但我不完全确定,但谢谢你澄清。:@jhorladestrella+1它也帮助我谢谢你。我很确定用户必须验证应用程序,但我不完全确定,但谢谢你澄清。:@jhorladestrella+1它帮助我而且