Facebook的API:的getUser()总是返回0 [英] Facebook API : getUser() always returning 0

查看:147
本文介绍了Facebook的API:的getUser()总是返回0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的code:

<html>
    <head>
    <body>
        <?php
        require_once 'facebook-php-sdk/src/facebook.php';

        $appapikey = '453976824647366';
        $appsecret = 'fe86f3b0b34b3ed6eb39bbce717b8062';

        $facebook = new Facebook($appapikey, $appsecret);

        $user_id = $facebook->getUser();
        echo $user_id;



        echo "<p>Hello <fb:name uid=\"$user_id\" useyou=\"false\" linked=\"false\" firstnameonly=\"true\"></fb:name>";
        ?>

    </body>

</head>
</html>

东西很简单,但我不能设法找到原因的getUser总是返回0
我想AP preciate您的帮助!

Something quite simple but i can't manage to find why getUser is always returning 0 I would appreciate your help!

推荐答案

要检查的第一件事是

require_once 'facebook-php-sdk/src/facebook.php';

请确保它是相对于您的PHP code为,而不是服务器结构。

Make sure it is relative to where your php code is rather than to the server structure.

要测试这个code,我可能只是使用被Facebook SDK提供的现有的例子,这样你得到它的第一次合作,通过自信地知道它真正的作品,然后就可以调整它按您的需要。
正是从这个链接粘贴
https://github.com/facebook/facebook-php -sdk / BLOB /主/例子/使用example.php

To test this code I would probably just use the existing example provided by Facebook sdk, that way you get it working first by confidently knowing that it really works and can then tweak it as per your needed. Just pasting it from this link https://github.com/facebook/facebook-php-sdk/blob/master/examples/example.php

<?php
/**
 * Copyright 2011 Facebook, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may
 * not use this file except in compliance with the License. You may obtain
 * a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations
 * under the License.
 */

require '../src/facebook.php';

// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
  'appId'  => '344617158898614',
  'secret' => '6dc8ac871858b34798bc2488200e503d',
));

// Get User ID
$user = $facebook->getUser();

// We may or may not have this data based on whether the user is logged in.
//
// If we have a $user id here, it means we know the user is logged into
// Facebook, but we don't know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.

if ($user) {
  try {
    // Proceed knowing you have a logged in user who's authenticated.
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}

// Login or logout url will be needed depending on current user state.
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}

// This call will always work since we are fetching public data.
$naitik = $facebook->api('/naitik');

?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
  <head>
    <title>php-sdk</title>
    <style>
      body {
        font-family: 'Lucida Grande', Verdana, Arial, sans-serif;
      }
      h1 a {
        text-decoration: none;
        color: #3b5998;
      }
      h1 a:hover {
        text-decoration: underline;
      }
    </style>
  </head>
  <body>
    <h1>php-sdk</h1>

    <?php if ($user): ?>
      <a href="<?php echo $logoutUrl; ?>">Logout</a>
    <?php else: ?>
      <div>
        Login using OAuth 2.0 handled by the PHP SDK:
        <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
      </div>
    <?php endif ?>

    <h3>PHP Session</h3>
    <pre><?php print_r($_SESSION); ?></pre>

    <?php if ($user): ?>
      <h3>You</h3>
      <img src="https://graph.facebook.com/<?php echo $user; ?>/picture">

      <h3>Your User Object (/me)</h3>
      <pre><?php print_r($user_profile); ?></pre>
    <?php else: ?>
      <strong><em>You are not Connected.</em></strong>
    <?php endif ?>

    <h3>Public profile of Naitik</h3>
    <img src="https://graph.facebook.com/naitik/picture">
    <?php echo $naitik['name']; ?>
  </body>
</html>

这篇关于Facebook的API:的getUser()总是返回0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆