2015-05-29 99 views
1

我需要做一個表格上傳照片的名稱和說明,但我想同時上傳照片到Facebook粉絲頁面,具有相同的形式。我不想在上傳圖片之前登錄Facebook,我只想在php中編寫憑據並使用它。我已經嘗試過,但我無法獲得facebook會話(而且我甚至不知道如果可以在沒有登錄的情況下執行此操作)。Php上傳到Facebook沒有Facebook登錄

在此先感謝

<?php 

//PAGE ID: ******** 

define('FACEBOOK_SDK_V4_SRC_DIR', '/complementos/facebook-php-sdk-v4-4.0-dev/src/Facebook/'); 
require __DIR__ . '/complementos/facebook-php-sdk-v4-4.0-dev/autoload.php'; 


require_once('complementos/facebook-php-sdk-v4-4.0-dev/src/Facebook/FacebookSession.php'); 

// Make sure to load the Facebook SDK for PHP via composer or manually 
require_once('complementos/facebook-php-sdk-v4-4.0-dev/src/Facebook/FacebookRequest.php'); 
require_once('complementos/facebook-php-sdk-v4-4.0-dev/src/Facebook/GraphObject.php'); 

use Facebook\FacebookSession; 
use Facebook\FacebookRequest; 
use Facebook\GraphObject; 

session_start(); 
FacebookSession::setDefaultApplication('********', '******'); 

if($session) { 

    try { 
    // uploading image to user timeline using facebook php sdk v4 
    $response = (new FacebookRequest(
     $session, 'POST', '/me/photos', array(
     'source' => new CURLFile('img/h_index.jpg', 'image/jpg'), // photo must be uploaded on your web hosting 
     'message' => 'User provided message' 
     ) 
    ) 
    )->execute()->getGraphObject(); 
    if($response) { 
     echo "Photo is uploaded..."; 
    } 

    } catch(FacebookRequestException $e) { 
    echo $e->getMessage(); 
    } 

} 

else 
{ 
    echo "no entra en session;"; 
} 
+0

您已經註冊了一個Facebook應用程序嗎? –

+0

是的,它已註冊。得到我的應用程序ID和應用程序的祕密,他們正確的FacebookSession :: setDefaultApplication('********','******'); 。 – Estirpicidades

回答

0

嘗試,如果這個工程: 要獲得訪問令牌,你可以從這裏得到它:https://developers.facebook.com/tools/accesstoken/

$session = new FacebookSession('Token'); 
+0

我已經嘗試過,用Facebook應用令牌替換令牌,現在我得到這個錯誤: 致命錯誤:在/ Applications/MAMP/htdocs/xxx/complementos/facebook-php中找不到類'Facebook \ Entities \ AccessToken' -sdk-v4-4.0-dev/src/Facebook/FacebookSession.php在第74行 – Estirpicidades

0

最後是完美!我有另一個問題,鏈接Facebook庫。解決這個問題並且使用你的修補程序,它可以工作現在我遇到另一個與權限有關的問題。這裏是: (#200)需要擴展權限:publish_actions

我會盡力得到一些關於它的信息。非常感謝你的幫助。