2012-10-03 86 views
0

我正在嘗試將我的Codeigniter網站與Facebook PHP SDK集成。我想要做的就是讓用戶在他們的Facebook牆上分享我的網站上的文章,如果他們登錄到Facebook帳戶。我的圖書館似乎正確加載,但每次我嘗試做某件事時,我都會遇到某種錯誤...主要是使用身份驗證。 getUser看起來不會返回正確的結果。我建立了我的Facebook應用程序併爲我的圖書館設置了配置變量,但沒有運氣。它說我沒有登錄到Facebook。當我點擊「登錄」錨點時,鏈接會將我帶到同一頁面,但帶有facebook網址,並且不要求我使用該應用登錄。這裏是我的代碼:CodeIgniter和Facebook Connect

function facebook($article_id){

$config = array(
    'appId' => '276870792431073', 
    'secret' => '8d49eee575413fb9a8063d22f65dbf6a' 
); 

$this->load->library('facebook', $config); 

$user = $this->facebook->getUser(); 

if($user){ 

    try { 

     $user_profile = $this->facebook->api('/me'); 

    } catch (FacebookApiException $e){ 

     error_log($e); 
     $user = null; 

    } 

} 

if($user){ 

    $article = $this->article->fetch_article($article_id); 
    $config = array(
     'message' => 'I just read an '.anchor('articles/'.url_title($article['title']).'/'.$article_id, 'article').' on '.anchor('', 'TrackTheOutbreak.com').'!', 

    ); 

    $this->facebook->api('/me/feed', 'post', $config); 

} else { 

    $data['MESSAGE_TITLE'] = 'Authentication Error'; 
    $data['MESSAGE_TEXT'] = 'You must be logged into an existing Facebook account to use this feature. Click '.anchor($this->facebook->getLoginUrl(), 'here').' to login.'; 
    $this->parser->parse('error_body.tpl', $data); 

} 

}

回答

0

爲了訪問用戶的信息,並張貼任何自己的牆上,你首先需要從他們那裏得到一個訪問令牌。要做到這一點,你需要確保你已經通過Facebook的FB_login(然後打開圖表)獲得他們的許可。我會再次檢查本指南,並確保您已將所有設置正確地發佈到他們的時間表。

https://developers.facebook.com/docs/reference/javascript/FB.login/

我希望這有助於