Php Facebook live好友搜索fql问题
我在朋友搜索方面有一些问题。我正在开发一个应用程序,它可以发布一些东西来选择朋友墙。我正在使用JavaScript SDK登录并获得权限 我的初始化函数:Php Facebook live好友搜索fql问题,php,facebook,facebook-fql,facebook-php-sdk,Php,Facebook,Facebook Fql,Facebook Php Sdk,我在朋友搜索方面有一些问题。我正在开发一个应用程序,它可以发布一些东西来选择朋友墙。我正在使用JavaScript SDK登录并获得权限 我的初始化函数: FB.init({ appId: 'xxxxxxxxx', status: true, cookie: true, xfbml: true, oauth: true}); FB.lo
FB.init({
appId: 'xxxxxxxxx',
status: true,
cookie: true,
xfbml: true,
oauth: true});
FB.login(function(response) {
if (response.authResponse){
//if loged in
}else{
//if canceled
}
}, {scope: 'publish_stream'});
登录功能:
FB.init({
appId: 'xxxxxxxxx',
status: true,
cookie: true,
xfbml: true,
oauth: true});
FB.login(function(response) {
if (response.authResponse){
//if loged in
}else{
//if canceled
}
}, {scope: 'publish_stream'});
在此之后,我使用的输入id是jQuery for friend live search的搜索:
$("#search").keyup(function(){
$("#friends").load("draugai.php",{
"search":$("#search").val()
}, function(){
$(".friend").click(function(){
$(this).addClass("selected").siblings().removeClass("selected");
});
});
});
我的php文件使用fql进行好友搜索:
require_once('facebook.php');
$config = array(
'appId' => 'XXX',
'secret' => '1234',
'cookie' => true
);
$facebook = new Facebook($config);
try {
$user_id = $facebook->getUser();
} catch (FacebookApiException $e) {
echo($e->getType());
echo($e->getMessage());
}
if ($_POST['search'] != "") {
$search = strtolower($_POST['search']);
$fql = "SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) AND strpos(lower(name),'$search') >= 0 ORDER BY name";
} else {
$fql = "SELECT uid, name, pic_square FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) ORDER BY name";
}
if ($user_id) {
try {
$ret_obj = $facebook->api(array(
'method' => 'fql.query',
'query' => $fql,
));
foreach ($ret_obj as $value) {
echo "<div class=\"friend\" uid=\"" . $value['uid'] . "\">";
echo $value["name"] . "<img src=\"" . $value['pic_square'] . "\"/>";
echo "</div>";
}
} catch (FacebookApiException $e) {
echo($e->getType());
echo($e->getMessage());
}
} else {
echo "no user";
}
我对此应用程序有一些问题:
我无法在Google Chrome上运行此功能。当我使用Firefox时,一切都很好,但当我在Chrome上尝试时,php文件不会打印任何用户。如果我根本不登录,它的行为是一样的。
另一个问题是,这种实时搜索的速度非常慢。它在5-6秒后发送响应。如何提高搜索速度?起初我努力使用请求对话框,但我只想选择一个用户。
<>你可以考虑使用。它使用非常熟悉的下拉列表来选择朋友,您的用户无疑会熟悉这一点。你可以将好友搜索留在Facebook上 您已经演示了可以使用JavaScript SDK调用login方法,因此调用该方法应该非常简单。这是我上面链接的Facebook文档中的一个代码示例 在回调函数中,您可以通过检查post_id参数是否存在来检测post是否成功。
让Facebook帮你吧!那个 只是一个注意事项-一个人不应该发布应用程序机密、访问令牌、应用程序ID等。。。有了这些信息,有人可能会冒充您、您的应用程序或您的页面,并执行一些恶意操作。我已经从你的帖子中删除了敏感数据。请以后注意这一点。我之前看到过这个机会,但这对我的申请不好,因为首先我需要选择朋友,然后选择在他的墙上张贴什么。好吧……好吧。。。在这种情况下,您可能希望预先获取用户的朋友并将他们存储在您的数据库中,然后为自动完成查询您自己的数据库。