用于查询公共便笺的PHP Facebook FQL

用于查询公共便笺的PHP Facebook FQL,php,facebook-like,facebook-php-sdk,facebook-fql,Php,Facebook Like,Facebook Php Sdk,Facebook Fql,我创建了一个没有特殊权限的应用程序。使用此应用程序,我可以查询Facebook事件以显示在我的网站上。一切正常 我现在想通过显示我的粉丝页面的Facebook笔记来扩展网站。当我尝试实现该功能时,会收到错误消息: “需要用户会话” 在FQL Note API引用中,他们说“任何有效的访问令牌,如果它是由页面编写的公共令牌。”我想我有一个有效的公共令牌 require '../src/fb-sdk/src/facebook.php'; $facebooknotes = new Facebook(

我创建了一个没有特殊权限的应用程序。使用此应用程序,我可以查询Facebook事件以显示在我的网站上。一切正常

我现在想通过显示我的粉丝页面的Facebook笔记来扩展网站。当我尝试实现该功能时,会收到错误消息:

“需要用户会话”

在FQL Note API引用中,他们说“任何有效的访问令牌,如果它是由页面编写的公共令牌。”我想我有一个有效的公共令牌

require '../src/fb-sdk/src/facebook.php';

$facebooknotes = new Facebook(array(
    'appId'  => 'xxxxxxxxxxxxxxx',
    'secret' => 'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy',
    'cookie' => false, // enable optional cookie support
));

$fql_notes = "SELECT uid, note_id, title, content, content_html, created_time, updated_time FROM note WHERE uid = 149018831796518";

$param  =   array(
'method'    => 'fql.query',
'query'     => $fql_notes,
'callback'  => ''
);

$fql_notesResult   =   $facebooknotes->api($param);

foreach($fql_notesResult as $keys => $fbnotevalues){ echo "<h2>" . $fbnotevalues['title'] . "</h2>" . $fbnotevalues['content_html']; }
require'../src/fb sdk/src/facebook.php';
$facebooknotes=新Facebook(阵列)(
“appId”=>“XXXXXXXXXXXXX”,
“secret”=>“yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy,
'cookie'=>false,//启用可选cookie支持
));
$fql_notes=“从注释中选择uid、注释id、标题、内容、内容html、创建时间、更新时间,其中uid=149018831796518”;
$param=数组(
'方法'=>'fql.query',
“查询”=>$fql\U注释,
“回调”=>“
);
$fql_notesResult=$facebooknotes->api($param);
foreach($fql_notesResult as$keys=>$fbnotevalues){echo'.$fbnotevalues['title'..”.$fbnotevalues['content_html'];}
有人能帮忙吗

问候,


rimshot

FQL似乎无法获取页面的注释。
uid
字段正在查找用户id。我的猜测是,如果您获得了适当的访问令牌,您仍然会出现错误,因为您的id不属于某个页面

要获取页面的注释,需要使用graph API:

$fql_notesResult   =   $facebooknotes->api('/149018831796518/notes', 'GET');
foreach($fql_notesResult as $keys => $fbnotevalues){ 
  echo "<h2>" . $fbnotevalues['subject'] . "</h2>" . $fbnotevalues['message']; 
}
$fql_notesResult=$facebooknotes->api('/149018831796518/notes','GET');
foreach($fql_notesResult as$keys=>$fbnotevalues){
回显“$fbnotevalues['subject']”。$fbnotevalues['message'];
}

谢谢您的回答。当我尝试使用Graph API时,仍然会收到一条错误消息:“致命错误:未捕获OAutheException:请求此资源需要用户访问令牌”。从facebook文档中,我认为查询这些信息不需要“用户访问令牌”。我做了更多的研究。这是一个已知的错误。我已对它提出起诉。你也应该。当然,它是从2012年2月13日起就知道的,所以我将通过存储一个访问令牌来解决这个问题,以用于进行此查询。谢谢你的研究。我现在把我的简历寄出去了。