2013-05-25 166 views
0

我已經制作了這個腳本。 它完美的工作,併發布到我的Facebook粉絲頁面的照片。 但一小時後,登錄標記無效。我怎樣才能永久登錄我的FB Fanpage? 任何想法?Facebook PHP SDK永久登錄

<?php 
require_once('facebook.php'); 
$facebook = new Facebook(array(
    'appId' => 'XXXXXXXXXXXXX', 
    'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX', 
    'fileUpload' => true 
)); 
$access_token = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; 
$facebook->setAccessToken($access_token); 
$facebook->setExtendedAccessToken(); 
$params = array(
    'access_token' => $access_token 
); 
// The id of the fanpage 
$fanpage = 'XXXXXXXXXXXXXX'; 
// Get the page access token 
$accounts_list = $facebook->api('/me/accounts'); 
foreach($accounts_list['data'] as $account){ 
if($account['id'] == $fanpage){ 
    $fanpage_token = $account['access_token']; 
    echo "<p>Page -- Access Token:<br>$fanpage_token</p>"; 
} 
} 
$args = array(
      'source' => '@'.realpath('img/17226_014.jpg'), 
      'message' => 'php sdk test', 
      'access_token' => $fanpage_token 
     ); 
$post_url = '/'.$fb_page_id.'/photos'; 
$photo = $facebook->api($post_url, 'post', $args); 
if(is_array($photo) && ! empty($photo['id'])) { 
echo 'Photo uploaded. Check it on Graph API Explorer. ID: ' . $photo['id']; 

} >

+0

閱讀此:https://developers.facebook.com/roadmap/offline-access-removal/ – CBroe

回答

1

你需要得到新的推廣的訪問令牌與

<?php 
    $new_access_token = $facebook->getAccessToken(); 
?> 

你叫facebook- $> setExtendedAccessToken()後?;

當然,您需要爲您的下一個API調用使用該訪問令牌。