Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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

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
facebook php api多用户一台计算机强制注销_Php_Facebook_Sdk - Fatal编程技术网

facebook php api多用户一台计算机强制注销

facebook php api多用户一台计算机强制注销,php,facebook,sdk,Php,Facebook,Sdk,我正在开发一个应用程序,它基本上是在一个信息亭中运行的,目的是允许用户在企业中登录facebook,登录后发布一条消息说他们在那里,之后他们会得到一张优惠券 问题出现了,在他们登录然后注销之后,下一个使用他们的帐户登录的人最终以前一个用户的身份发布,这将继续adnauseum 获得优惠券后,脚本会在15秒后自动将其注销,并将应用程序返回主屏幕供下一个用户使用。当他们登录时(他们可以这样做),它会将他们返回到请求发布权限的页面,但它会提取以前用户的所有信息。这是发送到facebook登录后在页面中

我正在开发一个应用程序,它基本上是在一个信息亭中运行的,目的是允许用户在企业中登录facebook,登录后发布一条消息说他们在那里,之后他们会得到一张优惠券

问题出现了,在他们登录然后注销之后,下一个使用他们的帐户登录的人最终以前一个用户的身份发布,这将继续adnauseum

获得优惠券后,脚本会在15秒后自动将其注销,并将应用程序返回主屏幕供下一个用户使用。当他们登录时(他们可以这样做),它会将他们返回到请求发布权限的页面,但它会提取以前用户的所有信息。这是发送到facebook登录后在页面中调用的代码

<?php
//include the Facebook PHP SDK
include_once 'couponGenerator/facebook.php';

//start the session if necessary
if( session_id() ) {

} else {
session_start();
}

//instantiate the Facebook library with the APP ID and APP SECRET
 $facebook = new Facebook(array(
'appId' => '00000000000',
'secret' => '000000000000000000000',
'cookie' => true,
'status' => true,
'oath' => true
));

$access_token = $facebook->getAccessToken();
$_SESSION['active'][$access_token];
//get the news feed of the active page using the page's access token
$page_feed = $facebook->api(
'/me/feed',
'GET',
array(
    'access_token' => $_SESSION['active']['access_token']
)
);
$fbuser = $facebook->api('/me');
//var_dump($page_feed); exit;
?>
下面是更新的连接类 `


你可能正在破坏Facebook会话,但你似乎没有破坏自己的会话

清除

$_SESSION['active'][$access_token];

你可能正在破坏Facebook会话,但你似乎没有破坏自己的会话

清除

$_SESSION['active'][$access_token];
您需要为每个用户强制

我不确定您正在使用的PHP API是否支持这一点,但OAuth对话框可以接收一个
auth\u类型
,当值设置为
reaauthenticate
时,它会强制用户提供其凭证:

$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
            . $app_id . "&redirect_uri=" . urlencode($my_url) 
            . '&auth_type=reauthenticate&auth_nonce=' . $auth_nonce;
这也可以使用Javascript API来完成。

您需要为每个用户强制

我不确定您正在使用的PHP API是否支持这一点,但OAuth对话框可以接收一个
auth\u类型
,当值设置为
reaauthenticate
时,它会强制用户提供其凭证:

$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
            . $app_id . "&redirect_uri=" . urlencode($my_url) 
            . '&auth_type=reauthenticate&auth_nonce=' . $auth_nonce;

这也可以使用Javascript API来完成。

将其置空,当我在与用户a登录和注销后与用户b登录时,它会调出用户a的信息。您能看到它是否正在从会话中调出相同的访问令牌吗?我返回访问令牌,如果您不这样认为,它将返回为null,似乎每次它返回时,它都会在新用户登录时提取上一个登录用户的令牌。因此会话将返回上一个登录令牌?尝试一下:unset($\u Session['var'];Session\u unregister($var);您可能正在处理bug 19586使其无效,当我在与用户a登录和注销后与用户b登录时,它会调出用户a的信息。您能看到它是否从会话中调出相同的访问令牌吗?我返回访问令牌,它返回为null,如果您的意思是其他,则每次它返回时都会返回为null当新用户登录时,lls上一个登录用户的令牌。因此会话将返回上一个登录令牌?尝试一下:unset($_Session['var');Session_unregister($var);您可能正在处理bug 19586
$_SESSION['active'][$access_token];
$dialog_url = "https://www.facebook.com/dialog/oauth?client_id="
            . $app_id . "&redirect_uri=" . urlencode($my_url) 
            . '&auth_type=reauthenticate&auth_nonce=' . $auth_nonce;