2011-04-06 146 views
5

我通过PHP SDK和工作登录与facebok api进行了工作集成。现在我尝试添加电子邮件的权限以及下面的代码,但是当尝试连接/登录到应用程序时,电子邮件未被请求。使用Facebook PHP SDK获取用户电子邮件的权限

// login or logout url will be needed depending on current user state. 
if ($me) { 
    $logoutUrl = $facebook->getLogoutUrl(); 
} else { 
    $loginUrl = $facebook->getLoginUrl(array(
    'req_perms' => 'email', 
)); 
} 

错误必须在此代码中,因为一切正常。谢谢!

+0

有没有人有这方面的经验? – Joseph 2011-04-09 11:21:03

回答

1

“电子邮件”后,取出你有逗号和浏览器重定向到$ loginUrl,像这样:

$loginUrl = $facebook->getLoginUrl(
    array(
    'req_perms' => 'email' 
) 
); 

echo '<script>top.location="'.$loginUrl.'";</script>'; 
die(); 

编辑

这是它是如何在一天内完成回来,现在Facebook的有无改变了他们的API:s。对于更现代的解决方案,请查看关于此问题的其他答案。

+1

这工作,除了我不得不将'req_perms'更改为'范围'。 – 2012-08-08 06:29:13

+0

为什么有人投这个答案? – fredrik 2012-09-24 15:47:05

+0

+1对于你的答案。 :) – 2013-03-06 03:59:06

3

这应该与PHP SDK工作:

header('Location:'.$facebook->getLoginUrl(array(
    'scope' => 'email' 
))); 
exit; 
相关问题