有没有办法在点击<fb:like>后重新加载页面?</fb:like>

时间:2011-02-12 15:13:05

标签: php facebook fbml

我想知道这个问题:我有一个简单的facebook-connect应用程序,只有在您登录并喜欢某个页面后才能显示某些内容。 它的工作原理(huzzah!)但我希望通过按下“喜欢”按钮后自动刷新来使其更加用户友好。

以下是一些代码:

<?php
if ($me) {

    $pageid = -----------;
    $uid = $me['id'];

    $likeID = $facebook->api(
        array( 'method' => 'fql.query', 'query' =>
        'SELECT target_id FROM connection WHERE source_id = ' . $uid . ' AND target_id = ' . $pageid )
        );

    if ( empty($likeID) ) 
    {
        // Person is LOGGED IN, but has NOT LIKED
        echo '<script src="MY WEBPAGE"></script><fb:like href="MY WEBPAGE" layout="box_count" show_faces="false" width="450"></fb:like>';
    } 
    else
    {
        // Person is LOGGED IN, and has LIKED, score!
        echo 'Download link';
    }
}
else
{
    // Person is NOT LOGGED IN, so we know NOTHING
    echo '<script src="MY WEBPAGE"></script><fb:like href="MY WEBPAGE" layout="box_count" show_faces="false" width="450"></fb:like>';
} ?>

我能对这段代码做些什么(也许在fb中:喜欢标签吗?),这样会让它重新加载页面吗?

感谢。

1 个答案:

答案 0 :(得分:6)

当您使用XFBML实现时,我假设JS库(http://connect.facebook.net/en_US/all.js#xfbml=1)已经加载,所以您需要的只是这个片段:

<script>
FB.Event.subscribe('edge.create', function(response) {
    window.location.reload();
});
</script>