facebook-> getUser()返回0
问题描述:
我认为这是因为用户必须授予某种对我的Facebook应用程序的访问权限,getUser才能提供给我?这里是我的代码:facebook-> getUser()返回0
<? require 'facebook.php'; ?>
<?php
$facebook = new Facebook(array(
'appId' => '[//fb app id]',
'secret' => '[//fb app secret]',
'cookie' => true
));
$uid = $facebook->getUser();
echo $uid;
?>
所以我想我的问题是,短提示用户授予权限,以我的应用程序,有没有任何其他类型的唯一标识符的,我可以从一个FB用户抓住,以防止他们从提交超过1项到我的应用程序。我有用户的添加提交,但我只想让每个用户提交一次。谢谢您的帮助!
答
要获得用户ID,用户必须授予权限
if($uid){
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;
}
}else{
$loginUrl = $facebook->getLoginUrl();
echo("<br>login url=".$loginUrl);
};
用户授予权限后(见loginUrl),您可以访问用户ID
在catch块应该是'$ UID = null;' – ifaour
你是什么意思,他将不得不授予许可?实际上,当您添加以下内容时,请参阅更新 –
:header('Location:'。$ loginUrl);然后点击去应用程序,然后它回去...与一个长的网址,与获得变量代码..但我不想发送用户头。:(, –