2016-07-05 2 views
0

Я использую следующий код для автоматического сообщения на Facebook, но он показывает мне OAuthException.Auto post facebook in php

$user_id = $facebook->getUser(); 
$page_info = $facebook->api("/PAGE_ID?fields=access_token"); 

try { 
    $ret_obj = $facebook->api(
     '/PAGE_ID/feed', 
     'POST', 
     array (
      'link' => 'http://www.example.com/', 
      'message' => 'This is a test', 
      'access_token' => $page_info['access_token'] 
     ) 
    ); 
} catch(FacebookApiException $e) { 
    $login_url = $facebook->getLoginUrl(array(
     'scope' => 'publish_stream' 
    )); 
    print_r($e->getType()); 
    print_r($e->getMessage()); 
} 

Ошибка:

Fatal error: Uncaught OAuthException: (#100) Tried accessing nonexisting field (access_token) on node type (User) thrown in /home/malwatal/public_html/basic/lib/base_facebook.php on line 1028

+0

.. А ваш вопрос? – Jer

+0

Как я могу это решить –

+0

'$ page_info ['access_token']' не существует – Lee

ответ

0

Теперь пришло время использовать facebook v5 SDK

$fb = new Facebook\Facebook([ 
    'app_id' => 'app_id', 
    'app_secret' => 'app_secret', 
    'default_graph_version' => 'v2.8', 
    ]); 
      // facebook auto post 

$params = array(
    "message" => "$title in $merchant $short", 
    "link" => "http://pickmyoffers.com/", 
    "picture" => "http://Pickmyoffers.com/images/searched/Flipkart.png", 
    "name" => "www.Pickmyoffers.com", 
    "caption" => "www.pickmyoffers.com", 
    "description" => "Submit Coupon and earn money through Pickmyoffers.com | Deals,Coupons and offers." 
); 
      $post = $fb->post('/Page_id/feed',$params, $access_token); 
      $post = $post->getGraphNode()->asArray(); 

} 

надеюсь, что это поможет