I have been using php sdk 4.0 with graph api....code is working fine if I logged in with the facebook account..where I made a app, but if I logged in with some other account then it shows me Fatal error: Uncaught exception 'Facebook\FacebookPermissionException' with message '(#200)
. The
session_start();
require_once( 'Facebook/FacebookSession.php');
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php');
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphUser.php' );
require_once( 'Facebook/GraphSessionInfo.php' );
require_once( 'Facebook/Entities/AccessToken.php');
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookHttpable.php');
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php');
require_once( 'Facebook/FacebookClientException.php');
require_once( 'Facebook/FacebookPermissionException.php');
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphUser;
use Facebook\GraphSessionInfo;
use Facebook\FacebookHttpable;
use Facebook\FacebookCurlHttpClient;
use Facebook\FacebookCurl;
use Facebook\FacebookClientException;
use Facebook\FacebookPermissionException;
if(isset($_REQUEST['logout'])){
unset($_SESSION['fb_token']);
}
$app_id = '3431232525******';
$app_secret = '1d9fa4f8108cb3**************';
$redirect_url='http://example.com/post.php';
FacebookSession::setDefaultApplication($app_id,$app_secret);
$helper = new FacebookRedirectLoginHelper($redirect_url);
$sess = $helper->getSessionFromRedirect();
if(isset($_SESSION['fb_token'])){
$sess = new FacebookSession($_SESSION['fb_token']);
}
$logout = 'http://example.com/post.php?logout=true';
if(isset($sess)){
$_SESSION['fb_token']=$sess->getToken();
$parameters = array('message' => 'Test');
$request = new FacebookRequest($sess,'POST','/me/feed',$parameters);
$response = $request->execute();
$graph = $response->getGraphObject();
echo "Posted";
echo "<a href='".$logout."'><button>Logout</button></a>";
}else{
echo '<a href="'.$helper->getLoginUrl(array('email')).'" >Login with facebook</a>';
}
use autoload.php
require __DIR__ . '/testfb/facebook-php-sdk-v4/autoload.php';