【发布时间】:2014-02-15 00:11:57
【问题描述】:
我目前在我的 Codeigniter 应用程序中使用以下代码从应用程序用户那里获取 Facebook 数据。
<?php
require_once('facebook-php-sdk/src/facebook.php');
// Create our Application instance (replace this with your appId and secret).
$facebook= new Facebook(array(
'appId' => '2453463636',
'secret' => '365653656565656',
'allowSignedRequest' => false,
));
$_REQUEST += $_GET;
$user = $facebook->getUser();
if ($user) {
try {
// Get the user profile data you have permission to view
// $user_profile = $facebook->api('/me');
$user_profile = $facebook->api('/me?fields=picture.width(100).height(100),first_name,last_name,username,email');
echo $user_profile['email'];
echo $user_profile['username'];
} catch (FacebookApiException $e) {
$user = null;
}
} else {
die('<script>top.location.href="'.$facebook->getLoginUrl().'";</script>');
}
?>
这在连接和返回页面上回显的用户的username 时工作正常,但是电子邮件不起作用。电子邮件返回在“未定义索引:电子邮件”视图中显示为错误。
几天前我用同样的东西来接收电子邮件,它工作正常,但那是在本地主机上。它可以在 localhost 上正常接收电子邮件,当推送到服务器时,它无法识别email,但它确实识别并获取了username。
为什么无法识别电子邮件?
我正在使用最新版本的 sdk:Facebook PHP SDK (v.3.2.3)
【问题讨论】:
标签: php facebook codeigniter email