2013-01-06 95 views
-2

fanpages如何檢查我們是否有粉絲的粉絲專頁或fanpages如何檢查我們是否有粉絲的粉絲專頁或FACEBOOK

ID傳遞到網頁的方法如下:

PAGE_ID或PAGE_ID,page_id2,page_id3

function isFan(a) 
{ 
    FB.api('me/likes/'+a ,function(response) 
    { 
    if (response.data.length == 0) 
    { 
     $("#myModal2").modal() 
    }else{ 
     //OK i like 
    } 
    }); 

}  
+0

沒有一個粉絲頁面和許多fanpages – Kamil

+1

http://en.wikipedia.org/wiki/Conditional_loop – Igy

+0

你要問對用戶的權限,你可以嘗試在此之前。用戶是否已授權您的應用程序? – TommyBs

回答

0

好,我做到了,怎麼會有人需要。

function isFan(a) 
{ 
    var myString = a; 
    var fan_page_id = myString.split(','); 

    for (var i=0;i<fan_page_id.length;i++) 
    { 
     FB.api('me/likes/'+fan_page_id[i] ,function(response) 
     { 
      if (response.data.length == 0) 
      { 
       $("#myModal2").modal() 
       brake; 
      }else{ 
       //OK i like 
      } 
     }); 
    } 
}  
0

那麼,我不現實地認爲你可以做或沒有你自己的一些處理。但是,您可以使用fql查詢來檢索某個人喜歡的所有頁面的列表,然後檢查它們是否與每個頁面匹配。

e.g //這將給你一個所有用戶的粉絲專頁喜歡

FB.api('/fql?q=' + urlencode("select page_id from page_fan where uid = me()")function(res){ 

}); 

那麼你可以使用自己的代碼來驗證你的名單中返回的數據。或者你可以不喜歡(請務必來urlencode查詢)

fql?q={"isFan":"select page_id from page_fan where uid = me()","myMatches":"select page_id from #isFan where page_id in (page_id1,page_id2)"} 

在JSON結果返回「myMatches」數組,那麼將只包含對你指定的ID喜歡。因此,請檢查此結果集的長度,並與最初的page_id數量相對照。

//pseudo code so prob some syntax errors here 
    var page_ids = Array(1,2,3); 
    var valid = true; 
    var myQuery = ''; // <- your fql query here 
    FB.api('/fql?q=' + myQuery, function(res)} 
     var matches = res['myMatches']; 
     if(matches.length == page_ids.length){ 
      valid = true; 
     }elseif(matches.contains(single_id)){ 
      //some single id if you only want to check one 
      valid = true; 
     }else{ 
      valid = false; 
     } 
    }); 

上面可以清楚地優化,但它只是一個起點,你