FACEBOOK:使用PHP查找登录用户

时间:2012-09-16 10:10:43

标签: php facebook wordpress facebook-graph-api facebook-php-sdk

我在wordpress网站上使用以下php代码

<?php
session_start();

require 'src/facebook.php';
include 'config.php'; 
$facebook = new Facebook(array(
  'appId'  => $app_id,
  'secret' => $app_secret
));

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

if ($user) {
  try {
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}

if ($user) {
echo "loggedin";

}

else
{
echo "not loggedin";
}

?>

但即使我对我的应用进行身份验证,我也会继续未登录状态。 以上代码在普通应用程序上工作正常,但在我的wordpress网站上,我收到会话错误,标题已经发送。

请有人告诉其他方法来解决这个问题。

注意:我不想要javascript

1 个答案:

答案 0 :(得分:0)

当你执行session_start时,实际上可能会发送该错误,因为已经构建了一些非标头元素,因此页面的标题已经发送。这意味着,您需要在以前的脚本中显示任何文本之前执行此操作(例如,如果您将其包含在某个地方的中间,只需在之前调用的脚本中执行此操作)。

既然你说这是wordpress而你只是把它放在某个地方,你可能想把第一部分分成项目的另一部分(在发送标题之前)然后在这个地方使用回声。

它也可能(我注意到你正在使用关闭?&gt;),如果你只是编写PHP,你可能想避免使用?&gt;在文件的末尾,因为之后的任何空行可能会被发送到输出。