0

我想创建一个类似于此页面的 Facebook 应用

https://www.facebook.com/carlorinosg/app_150206515038121

用户点击喜欢,页面会检查用户是否使用正确的用户ID点击“喜欢”,它将允许用户访问下面的内容。

如果我没记错的话,所有 fb 应用程序都需要用户通过权限页面才能与应用程序交互。

然而,这个应用程序似乎允许用户点击喜欢并通过 $facebook->getUser(); 获取用户 ID。(如果我没记错的话)没有经过许可页面..

我想知道如何实现与这个 facebook 应用程序相同的设计?

为什么UID总是返回null。? 下面的代码

            <?php
            require_once("facebook.php");
            $config = array();
            $config['appId'] = 'xxx';
            $config['secret'] = 'xxxx';
            $config['fileUpload'] = false; // optional

            $facebook = new Facebook($config);

                $fql = 'SELECT  uid FROM user where uid = me()';
                        $ret_obj = $facebook->api(array(
                            'method' => 'fql.query',
                            'query' => $fql,
                                ));

                        var_dump($ret_obj );
            ?>
4

1 回答 1

1

1)如果您需要用户 ID 或用户信息或来自 facebook 的任何类型的数据,那么您需要要求用户授权该应用程序。

2)如果您不关心查看应用程序的用户是谁,但您想查看用户是否喜欢您的页面,那么您可以使用此代码并在用户喜欢页面时显示内容。

<?php
 require 'facebook/src/facebook.php';
 $facebook = new Facebook(array(
  'appId'  => $CONF['FB_APP_ID'],
  'secret' => $CONF['FB_APP_SECRET'],
  'cookie' => false,
 ));

 // Get User ID
 $user = $facebook->getUser();
 $signed_request = $facebook->getSignedRequest();
 $like_status = $signed_request["page"]["liked"];
 if($like_status == 1){ 
 echo 'You liked the page. so you are able to see this';
 }else{  echo 'Please like the page to access'; 
 } ?>

3)如果您不关心查看应用程序的用户是谁并且您不希望用户喜欢,请发送 html 页面。

于 2012-05-24T14:55:14.687 回答