Facebook sdk 使用 php:如何获取已连接用户的用户 ID
Posted
技术标签:
【中文标题】Facebook sdk 使用 php:如何获取已连接用户的用户 ID【英文标题】:Facebook sdk using php: how to get theuserid of the connected user 【发布时间】:2013-03-07 00:40:43 【问题描述】:如何获取当前登录的用户ID?
我很确定我的 appId 是正确的
$facebook = new Facebook(array(
'appId' => '...',
'secret' => '...',
));
我用这个方法但是我返回0;
$facebook->getUser();
【问题讨论】:
【参考方案1】:如果您想使用此代码获取 facebook 用户 ID
$facebook = new Facebook(array(
'appId' => 'your_app_id',
'secret' => 'your_app_secret',
));
$user = $facebook->getUser();
你有条件之前应该做的,第一个条件是你把那个代码放在这个代码提供的用户通过fb登录后重定向的页面中
$params = array(
'display'=>'popup',
'redirect_uri' => 'http://example.com'
);
$loginUrl = $facebook->getLoginUrl($params);
或者第二个条件是你已经有用户'Access Token',所以代码会是这样的
$facebook = new Facebook(array(
'appId' => 'your_app_id',
'secret' => 'your_app_secret',
));
$facebook->setAccessToken('user_access_token');
$user = $facebook->getUser();
如果您不清楚使用 php SDK 的 Facebook 登录流程,可以访问此page
【讨论】:
【参考方案2】:$myData=$facebook->api('/me');
$myid=myData['id'];
$myName=myData['name'];
$myUsername=myData['username'];
[id] => your id
[name] => your full name
[first_name] => your firs name
[last_name] => lastname
[link] => profil link
[username] => username
[gender] => your gender (male,female)
[email] => your mail (if have email permission)
[timezone] => 2
[locale] => your locale
[verified] => 1
【讨论】:
这对其他用户有用吗,不仅仅是我?这个想法是我想让 facebook 用户 ID 访问我的网站。 此代码获取所有人员信息连接到您的站点.. me= 已连接用户,如果您连接此代码,则获取您的信息,如果有人连接此代码,则获取他们的信息。例如,如果您想记录此信息,请使用 php 或 asp 将所有信息保存到数据库。 Mahmut 连接您的网站并接受您的应用 此代码获取 Mahmut 的信息.. $myData=$facebook->api('/me'); $myname=myData['name']; -----> $myname = Mahmut Duman 不是你的名字,只是连接了用户信息 小心 vavien ..(对不起,我的英语不好)【参考方案3】:按照本指南:Login for Server-side Apps。基本上,您必须生成一个登录 URL,接收 Facebook 生成的代码,并使用此代码请求访问令牌。
【讨论】:
以上是关于Facebook sdk 使用 php:如何获取已连接用户的用户 ID的主要内容,如果未能解决你的问题,请参考以下文章
Facebook JS+PHP SDK 返回异常 此授权码已过期
无法在 Laravel 4 中使用 Facebook 的 PHP SDK 获取用户个人资料
使用 php sdk 在 facebook 中获取访问令牌时出错