2011-07-07 10 views
0

Like/Unlikeに応じて異なるコンテンツを表示するFacebookページを作ろうとしています。私は、Chromeブラウザではなく、ある程度は動作するこのサイトで以下のコードを見つけました - また、XD Proxyという厄介なポップアップを手に入れました。 firefoxでは、これがポップアップし、完全に動作する前に消えます。 ご協力いただければ幸いです。 (iframe内に表示されます)facebookのlike/unlikeページを表示

Index.htmlと

<!DOCTYPE html> 
<html> 

<head> 
    <meta charset='UTF-8' /> 

    <title>BASE</title> 

    <link rel='stylesheet' href='css/style.css' /> 

    <!--[if IE]> 
     <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
    <![endif]--> 

    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js'></script> 
    <script src='js/example.js'></script> 
</head> 

<body> 

<div id="fb-root"></div> 
<script src="http://connect.facebook.net/en_US/all.js"></script> 
<script> 
    FB.init({ 
    appId : '114317821995273', 
    status : true, 
    cookie : true, 
    xfbml : true 
    }); 
</script> 


<div id="container_notlike"> 
YOU DONT LIKE 
</div> 

<div id="container_like"> 
YOU LIKE 
</div> 



</body> 

</html> 

Javascriptが次のとおりです。助けることができる誰にも事前に

$(document).ready(function(){ 

    FB.login(function(response) { 
     if (response.session) { 

      var user_id = response.session.uid; 
      var page_id = "187015391355550"; //Test Page 
      var fql_query = "SELECT uid FROM page_fan WHERE page_id = "+page_id+"and uid="+user_id; 
      var the_query = FB.Data.query(fql_query); 

      the_query.wait(function(rows) { 

       if (rows.length == 1 && rows[0].uid == user_id) { 
        $("#container_like").show(); 

        //here you could also do some ajax and get the content for a "liker" instead of simply showing a hidden div in the page. 

       } else { 
        $("#container_notlike").show(); 
        //and here you could get the content for a non liker in ajax... 
       } 
      }); 


     } else { 
     // user is not logged in 
     } 
    }); 

}); 

感謝します。そして私はこれまでこれを持っていた以前のポスターに感謝します。

+0

をページタブ/キャンバス(apps.facebook.com/foo)を介してサードパーティのサイト上やFacebook自体にこのですか? –

+0

これはあまりにも明白かもしれませんが、Facebook APIを読み込んでいますか?私はあなたのコードのどこにでも引き込まれているのを見ません。 –

答えて

1

あなたのfqlクエリは、page_idの後ろにスペースが必要です。読み込みする必要があり :

var fql_query = "SELECT uid FROM page_fan WHERE page_id = "+page_id+" and uid="+user_id; 
関連する問題