Hướng dẫn
Quảng cáo

Hướng dẫn đăng nhập PHP bằng Facebook API SDK

Hướng dẫn tạo chức năng đăng nhập cho user trong website PHP bằng Facebook API SDK (Cập nhật liên tục)

Để có thể sử dụng chức năng đăng nhập bằng Facebook, điều đầu tiên bạn cần làm đó là:

Tạo ứng dụng trên Facebook

Để tạo ứng dụng bạn truy cập vào linkhttps://developers.facebook.com/apps/để+ Thêm ứng dụng mới.
Đăng nhập bằng Facebook với PHP
Sẽ hiện ra bảngTạo ID ứng dụng mới, bạn vui lòng nhập tênTên hiển thị, sau đó chọnTạo ID ứng dụng
Đăng nhập bằng Facebook với PHP
Sau khi tạo ID ứng dụng Facebook sẽ yêu cầu bạnThiết lập sản phẩm, bạn chọn sản phẩmĐăng nhập Facebook.
Đăng nhập bằng Facebook với PHP
Khi xuất hiện bảng:
Đăng nhập bằng Facebook với PHP
Bạn chọn nền tảngWeb, sau đó clickTiếp tụccho đến hết.
Tiếp đến bạn chọnCài đặtở menu bên trái
Đăng nhập bằng Facebook với PHP
trongMiền ứng dụngbạn vui lòng nhập domain của mình vào, VD:vzn.vn
Tiếp đến chọnDanh mụcBiểu tượng ứng dụng
ChọnLưu thay đổi
Đến đây bạn đã cơ bản hoàn thành tạo ứng dụng, nhưng ứng dụng của bạn vẫn chưa khả dụng với mọi người. Để sử dụng được ứng dụng bạn vui lòng chọnXét duyệt ứng dụng
Click vào nút bên dướiĐặt VZN.VN ở chế độ công khai?để bật nó lên.
Đăng nhập bằng Facebook với PHP
Đến đây bạn đã hoàn thành việc Tạo ứng dụng Facebook.
==========

Tạo trang đăng nhập PHP qua Facebook với Facebook SDK bản 5.7

Đầu tiên bạn truy cập vào link này:https://github.com/facebook/php-graph-sdktải vềFacebook SDK, sau khi giải nén bạn truy cập vào thư mụcphp-graph-sdk\srcCopy thư mụcFacebookcho ra root nằm ngang hàng với các file PHP mình sẽ tạo, cấu trúc dạng:
Đăng nhập bằng Facebook với PHP
Giờ bạn tạo trang đăng nhậplogin.phpvà trang hiển thị thông tin sau khi đăng nhậpfb-callback.php
Trang login.php

Ví dụ

<?php
session_start();
require_once( 'Facebook/autoload.php' );
$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.9',
  ]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email']; // Optional permissions
$loginUrl = $helper->getLoginUrl('https://vzn.vn/demo/fb-callback.php', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
?>

Trang fb-callback.php

Ví dụ

<?php
session_start();
require_once( 'Facebook/autoload.php' );
$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.9',
  ]);
$helper = $fb->getRedirectLoginHelper();
try {
  $accessToken = $helper->getAccessToken();
  $response = $fb->get('/me?fields=id,name,email', $accessToken);
} catch(Facebook\Exceptions\FacebookResponseException $e) {
  // When Graph returns an error
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) {
  // When validation fails or other local issues
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
if (! isset($accessToken)) {
  if ($helper->getError()) {
    header('HTTP/1.0 401 Unauthorized');
    echo "Error: " . $helper->getError() . "\n";
    echo "Error Code: " . $helper->getErrorCode() . "\n";
    echo "Error Reason: " . $helper->getErrorReason() . "\n";
    echo "Error Description: " . $helper->getErrorDescription() . "\n";
  } else {
    header('HTTP/1.0 400 Bad Request');
    echo 'Bad request';
  }
  exit;
}
// Logged in
$me = $response->getGraphUser();
echo 'Logged in as: ' . $me->getName();
echo 'ID:' . $me->getId();
echo 'Email:' . $me->getEmail();
$_SESSION['fb_access_token'] = (string) $accessToken;
// Từ đây bạn xử lý kiểm tra thông tin user trong database sau đó xử lý.
?>

Với VD trên hi vọng bài viết có thể giúp đỡ bạn giải quyết vấn đề liên quan đến Đăng nhập PHP qua Facebook. Có thắc mắc gì các bạn vui lòng comment bên dưới để mình trả lời nhé.

Bài viết này đã giúp ích cho bạn?

Bài viết mới

Advertisements