FB Connect getUser返回0

时间:2011-07-20 10:59:33

标签: php facebook

我看了其他问题,我尝试了一些答案,但我的脚本根本不起作用。我正在尝试使用FB Connect在我的页面中登录用户。

但是函数getUser每次都返回0,这是我的代码:

$session = $this->fb->getUser();
    print_r ( $session );

    // Session based API call.
    if ($session) {
        try {
            // check if user exists
            $login = (object)loadModel("Login");
            if ( $user = $login->oAuthLogin("facebook", $session) ) {
                // is logged in
                print_r ( $user );
                $login_controller = (object)loadController("Login");
                $login_controller->saveLoguedUser($user, true);
            } else {
                $me = $this->fb->api('/me');
                print_r ( $me );
                // create user
                $user = array (
                    "oauth_provider" => "facebook",
                    "oauth_userid" => $session,
                    "name" => $me['name'],
                    "email" => $me['email']
                );

                $users = (object)loadModel("Users");
                if ( $user = (object)$users->create($user) ) {
                    print_r ( $user );
                    $login_controller = (object)loadController("Login");
                    $login_controller->saveLoguedUser($user, true);
                } else {
                    echo "NO creado";
                }
            }
        } catch (FacebookApiException $e) {
            error_log($e);
        }
    } else {
        //header("Location: http://web.loc" );
        $url = $this->getLoginUrl();
        echo '<script type="text/javascript">top.location.href="'.$url.'"</script>';
    }

这是脚本在用户clic登录后执行,因为我使用函数getLoginUrl获取URL,并在登录FB后重定向到此脚本。

我尝试了FB中的示例脚本并正常工作......我不知道发生了什么。

0 个答案:

没有答案