Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.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提要,尽管他已经从FB注销_Php_Facebook_Facebook Graph Api_Login - Fatal编程技术网

Php 我的网站可以发布一个用户的Facebook提要,尽管他已经从FB注销

Php 我的网站可以发布一个用户的Facebook提要,尽管他已经从FB注销,php,facebook,facebook-graph-api,login,Php,Facebook,Facebook Graph Api,Login,在我的页面上,用户可以上传图片并将其发布到他们的facebook墙上,但通常只有在登录到facebook帐户后,他们才能在墙上发布。我使用以下代码检查用户状态: // check if user is connected to facebook $facebook = new Facebook(array( 'appId' => Yii::app()->params['fbAppId'],

在我的页面上,用户可以上传图片并将其发布到他们的facebook墙上,但通常只有在登录到facebook帐户后,他们才能在墙上发布。我使用以下代码检查用户状态:

// check if user is connected to facebook
$facebook = new Facebook(array(
                          'appId'  => Yii::app()->params['fbAppId'],
                          'secret' => Yii::app()->params['fbSecret'],
                        ));
$user = $facebook->getUser();
if ($user = $facebook->getUser()) 
{
     try 
     {
         $user_profile = $facebook->api('/me');
         echo "you are logged in";
     } 
     catch (FacebookApiException $e) 
     {
         $user = NULL;
         echo "you are logged out";
     }
}
$facebook->api('/me/feed', 'POST', $attachment);
(即使是建议检查用户是否不仅拥有会话,而且拥有有效的fb登录名的代码,也会返回true,尽管我不再登录fb。)

现在,如果我通过Facebook Connect登录到我自己的页面,然后从FB注销,我仍然登录到我自己的网页。目前还可以。但这段代码不应该起作用:

// check if user is connected to facebook
$facebook = new Facebook(array(
                          'appId'  => Yii::app()->params['fbAppId'],
                          'secret' => Yii::app()->params['fbSecret'],
                        ));
$user = $facebook->getUser();
if ($user = $facebook->getUser()) 
{
     try 
     {
         $user_profile = $facebook->api('/me');
         echo "you are logged in";
     } 
     catch (FacebookApiException $e) 
     {
         $user = NULL;
         echo "you are logged out";
     }
}
$facebook->api('/me/feed', 'POST', $attachment);
这意味着网站将把用户上传的图片直接发布到用户的feed中。虽然用户已从facebook注销,但这似乎有效

顺便说一句,我不要求离线许可

致以最良好的祝愿,
Sebastian

您的注销代码在哪里?在这种情况下,用户仅从Facebook注销(通过单击Facebook.com上的注销),而不是从我的网站注销,这意味着他仍然登录到我的网页,但没有有效的Facebook登录。我的网站的注销程序可以正常工作,但在这种情况下不起作用。