现场消息墙与社会概况图片

时间:2015-12-05 21:47:51

标签: php sql facebook twitter

我想创建一个用户可以发布消息的页面,然后它会显示在提交表单旁边的墙上。对于我所知道的PHP和SQL,这非常简单。

困难的部分是,我想链接他们的Facebook或Twitter帐户,以在他们的消息旁边显示他们的个人资料照片。

它基本上是一个喊叫墙,旁边有用户的个人资料照片和讲话泡泡。

我有什么想法,或者你看过这个例子吗?

2 个答案:

答案 0 :(得分:0)

您需要授权用户:https://developers.facebook.com/docs/facebook-login/web

另一个教程,如果Facebook文档还不够:http://www.devils-heaven.com/facebook-javascript-sdk-login/

之后,使用/me/picture端点获取个人资料图片。

绝对推荐JavaScript SDK,它比使用PHP SDK更容易处理,可用性更好 - 因为您不需要重定向用户以获得授权。

对于Twitter,您只需提供用户名 - 例如:https://twitter.com/[username]/profile_image?size=original

Twitter无需授权,也有授权的替代方案:https://dev.twitter.com/rest/reference/get/users/show

答案 1 :(得分:0)

正如@luschn指出的那样,您需要对用户进行身份验证。

微博

您需要使用GET users/show端点。

您需要使用GET /me/picture端点。

PHP SDK

要使用Facebook执行此操作,您可以轻松使用他们提供的php sdk

https://developers.facebook.com/docs/php/howto/example_retrieve_user_profile

$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.2',
  ]);

try {
  // Returns a `Facebook\FacebookResponse` object
  $response = $fb->get('/me?fields=id,name', '{access-token}');
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

$user = $response->getGraphUser();