2014-09-17 2 views
0

Я пытался протестировать систему входа в Facebook PHP, но получаю ошибку:Facebook Войти PHP SDK 4.4

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /xxxxx/httpd.www/Facebook/FacebookRedirectLoginHelper.php on line 146

Я прочитал через несколько различных примеров и пытался реализовать каждый после первого запуска в этом качестве так же, как читать различные вопросы/ответы здесь все безрезультатно.

Если кто-то столкнулся с этим и нашел решение или знает о решении, я бы очень ценю указатель.

Редактировать текущий код добавлен.

// init app with app id and secret 
FacebookSession::setDefaultApplication('xxx','xxx'); 

require_once('Facebook/FacebookSession.php'); 
require_once('Facebook/FacebookRedirectLoginHelper.php'); 
require_once('Facebook/FacebookRequest.php'); 
require_once('Facebook/FacebookResponse.php'); 
require_once('Facebook/FacebookSDKException.php'); 
require_once('Facebook/FacebookRequestException.php'); 
require_once('Facebook/FacebookAuthorizationException.php'); 
require_once('Facebook/GraphObject.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; 


// login helper with redirect_uri 
$helper = new FacebookRedirectLoginHelper('http://somesite.com/index.php'); 

try { 
    $session = $helper->getSessionFromRedirect(); 
} catch(FacebookRequestException $ex) { 
    // When Facebook returns an error 
} catch(Exception $ex) { 
    // When validation fails or other local issues 
} 

// see if we have a session 
if (isset($session)) { 
    // graph api request for user data 
    $request = new FacebookRequest($session, 'GET', '/me'); 
    $response = $request->execute(); 
    // get response 
    $graphObject = $response->getGraphObject(); 

    // print data 
    echo print_r($graphObject, 1); 
} else { 
    // show login url 
    echo '<a href="' . $helper->getLoginUrl() . '">Login</a>'; 
} 
+0

Какую версию PHP вы используете? http://stackoverflow.com/a/13388570/ –

+0

@ Fred-ii- im using PHP 5.6 – Parody

+0

Если вы используете PHP 5.6, вы, должно быть, что-то изменили в FacebookRedirectLoginHelper.php – WizKid

ответ

1

У меня есть тот же вопрос с вами. Вы не можете использовать «включить», как в старой версии. В V4.4, они используют это так:

define('FACEBOOK_SDK_V4_SRC_DIR', '/path/to/facebook-php-sdk-v4/src/Facebook/'); 
require __DIR__ . '/path/to/facebook-php-sdk-v4/autoload.php'; 

, а затем, так же, как вы

use Facebook\FacebookSession; 
    use Facebook\FacebookRequest; 
    use Facebook\GraphUser; 
    use Facebook\FacebookRequestException; 

Это все! ссылка: Facebook SDK for PHP

+0

Это был мой плохой мой хост для нового домена PHP до PHP 5.3, но ty – Parody

Смежные вопросы