2011-11-21 142 views
2

我知道,我的問題在這裏被問了很多次,但對我來說沒有答案。 我創建了Facebook Fanpage選項卡。所有文件都存儲在我的私人Web空間中。 現在我想確定一個用戶是否已經喜歡這個頁面或者還沒有喜歡它!Facebook:檢查用戶是否喜歡Facebook粉絲頁籤

所以我用這個代碼:

<?php 
    function parsePageSignedRequest() { 
     if (isset($_REQUEST['signed_request'])) { 
      $encoded_sig = null; 
      $payload = null; 
      list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2); 
      $sig = base64_decode(strtr($encoded_sig, '-_', '+/')); 
      $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true)); 
      return $data; 
     } 
     return false; 
    } 

    if($signed_request == parsePageSignedRequest()) { 
     if($signed_request->page->liked) { 
      $isteinfan = "false"; 
     } 
     else { 
      $isteinfan = "true"; 

     } 
    } 
    //PHP Variable an JavaScript übergeben 
    echo "<script>"; 
    echo "isteinfan = '$isteinfan';"; 
    echo "console.log('ist ein fan: ');"; 
    echo "console.log(isteinfan);"; 
    echo "</script>"; 
?> 

但它不工作。 你能幫我嗎? 你的Raphael

回答

7

我建議你包括facebook php庫,你可以從https://github.com/facebook/php-sdk/tree/master/src下載。您必須將所有三個文件放在同一個目錄中。然後你就可以得到liked狀態很容易:

define('APP_ID','xxxxxxxx'); 
define('APP_SECRET','xxxxxxxx'); 

require ("facebook.php"); 

$facebook = new Facebook(array(
    'appId' => APP_ID, 
    'secret' => APP_SECRET, 
    'cookie' => true, 
)); 

$signed_request = $facebook->getSignedRequest(); 

$liked = $signed_request["page"]["liked"]; 

現在$liked是可以truefalse

+0

新回購這裏是一個布爾值:https://github.com/facebook/facebook-php- SDK – nicolast

相關問題