Monday, June 6, 2016

Tutorial Membuat Login Facebook Dengan PHP



Login facebook dengan PHP , kita dapat menggunakan facebook login pada website kita dengan menggunakan akun facebook pengguna untuk login ke website kita. Jadi kita kita tidak haru memmbutuhkan form resgistrasi dan manajemen pengguna pada web kita. Cukup kita memanfaatkan facebook login yang bisa di pantau pada halaman aplikasi facebook.

Pada tutorial kali ini cumacoder.com akan membahas bagaimana mengintegrasikan facebook login ke website kita dengan menggunakan Facebook PHP SDK , tutorial ini dilengkapi full source code yang bisa didownload pada akhir tutorial ini.

Membuat Facebook APP ID dan APP Secret.
Langkah Ke - 1 » Kunjungi https://developers.facebook.com/apps/ dan klik Tambahkan Sebuah Aplikasi Baru 
» Pilih Website
» Isi Nama Aplikasi Yang Akan Dibuat dan klik Create New Facebook App ID 
» Pilih kategori aplikasi dan klik Buat ID Aplikasi
» Dan Klik Skip Quick Start

Tutorial Membuat Login Facebook Dengan PHP


Tutorial Membuat Login Facebook Dengan PHP


Tutorial Membuat Login Facebook Dengan PHP

Langkah Ke - 2 » Pada menu Pengaturan, Kita isi form Domain Aplikasi ( Ex:www.cumacoder.com )  dan Email Kontak Selanjutnya klik Tambah Platform .
Tutorial Membuat Login Facebook Dengan PHP

Untuk Url Situs Silahkan Di isi Atau Boleh Dikosongkan
Tutorial Membuat Login Facebook Dengan PHP

Step 3 » Untuk Mengaktifkan Aplikasi silahkan klik Tinjauan Aplikasi, Dan klik tombol untuk mengaktifkan aplikasi .

Source Code File fbconfig.php

Step 4 » Silahkan download source code disini, Facebook Login PHP .


Step 5 » Silahkan buka file fbconfig.php dan masukan APP ID , Secret ID dan ubah nama domain. Seperti dibawah ini.


// init app with app id and secret
FacebookSession::setDefaultApplication( 'Your APP ID','Your APP Secret' );
// login helper with redirect_uri
    $helper = new FacebookRedirectLoginHelper('http://www.cumacoder.com/fbconfig.php' );

Your APP ID & Your Secret APP Secret : Ganti sesuai dengan aplikasi yang sudah kita buat di facebook .
Step 6 » Full Source Code File fbconfig.php. Silahkan baca baris komentar untuk info lebih detail.
<?php
session_start();
// added in v4.0.0
require_once 'autoload.php';
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\Entities\AccessToken;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookHttpable;
// init app with app id and secret
FacebookSession::setDefaultApplication( 'Your APP ID','Your APP Secret' );
// login helper with redirect_uri
    $helper = new FacebookRedirectLoginHelper('http://www.cumacoder.com/fbconfig.php' );
try {
  $session = $helper->getSessionFromRedirect();
} catch( FacebookRequestException $ex ) {
  // When Facebook returns an error
} catch( Exception $ex ) {
  // When validation fails or other local issues
}
// see if we have a session
if ( isset( $session ) ) {
  // graph api request for user data
  $request = new FacebookRequest( $session, 'GET', '/me' );
  $response = $request->execute();
  // get response
  $graphObject = $response->getGraphObject();
      $fbid = $graphObject->getProperty('id');              // To Get Facebook ID
      $fbfullname = $graphObject->getProperty('name'); // To Get Facebook full name
     $femail = $graphObject->getProperty('email');    // To Get Facebook email ID
 /* ---- Session Variables -----*/
     $_SESSION['FBID'] = $fbid;           
        $_SESSION['FULLNAME'] = $fbfullname;
     $_SESSION['EMAIL'] =  $femail;
    /* ---- header location after session ----*/
  header("Location: index.php");
} else {
  $loginUrl = $helper->getLoginUrl();
 header("Location: ".$loginUrl);
}
?>
Source Code File logout.php
file Logout.php digunakan untuk mengahpus sesi login Facebook dan meneruskannya ke halaman utama website kita


Step 7 » Silahkan input halaman utama setelah 
<?php 
session_start();
session_unset();
    $_SESSION['FBID'] = NULL;
    $_SESSION['FULLNAME'] = NULL;
    $_SESSION['EMAIL'] =  NULL;
header("Location: index.php");        // you can enter home page here ( Eg : header("Location: " ."http://www.cumacoder.com"); 
?>

Source Code File index.php

Step 8 » Pada halaman index ini kita bisa mengatur apa yang akan tampil setelah login dengan facebook dan sebelum login dengan facebook .
Full Source Code index.php .
<?php
session_start(); 
?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
  <head>
    <title>Login with Facebook</title>
<link href="http://www.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" rel="stylesheet"> 
 </head>
  <body>
  <?php if ($_SESSION['FBID']): ?>      <!--  After user login  -->
<div class="container">
<div class="hero-unit">
  <h1>Hello <?php echo $_SESSION['USERNAME']; ?></h1>
  <p>Welcome to "facebook login" tutorial</p>
  </div>
<div class="span4">
 <ul class="nav nav-list">
<li class="nav-header">Image</li>
 <li><img src="https://graph.facebook.com/<?php echo $_SESSION['FBID']; ?>/picture"></li>
<li class="nav-header">Facebook ID</li>
<li><?php echo  $_SESSION['FBID']; ?></li>
<li class="nav-header">Facebook fullname</li>
<li><?php echo $_SESSION['FULLNAME']; ?></li>
<li class="nav-header">Facebook Email</li>
<li><?php echo $_SESSION['EMAIL']; ?></li>
<div><a href="logout.php">Logout</a></div>
</ul></div></div>
    <?php else: ?>     <!-- Before login --> 
<div class="container">
<h1>Login with Facebook</h1>
           Not Connected
<div>
      <a href="fbconfig.php">Login with Facebook</a></div>
      </div>
    <?php endif ?>
  </body>
</html>

Menyimpan Data User
» Kita Bisa menyimpan data user ke dalam database. Untuk itu silahkan buat struktur tabel seperti berikut: .
CREATE TABLE IF NOT EXISTS `Users` (
  `UID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `Fuid` varchar(100) NOT NULL,
  `Ffname` varchar(60) NOT NULL,
  `Femail` varchar(60) DEFAULT NULL,
  PRIMARY KEY (`UID`)
);

» Buka dbconfig.php dan sesuaikan dengan settingan database kita.
<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');    // DB username
define('DB_PASSWORD', '');    // DB password
define('DB_DATABASE', 'fblogin');      // DB name
$connection = mysql_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD) or die( "Unable to connect");
$database = mysql_select_db(DB_DATABASE) or die( "Unable to select database");
?>

» File functions.php merupakan fungsi yang bertugas untuk menyimpan data user ke database.
<?php
require 'dbconfig.php';
function checkuser($fuid,$ffname,$femail){
     $check = mysql_query("select * from Users where Fuid='$fuid'");
 $check = mysql_num_rows($check);
 if (empty($check)) { // if new user . Insert a new record  
 $query = "INSERT INTO Users (Fuid,Ffname,Femail) VALUES ('$fuid','$ffname','$femail')";
 mysql_query($query); 
 } else {   // If Returned user . update the user record  
 $query = "UPDATE Users SET Ffname='$ffname', Femail='$femail' where Fuid='$fuid'";
 mysql_query($query);
 }
}?>

Untuk Source Code Dan Database, Silahkan Download dibawah ini . Semoga Tutorial Ini bisa bermanfaat .

Artikel Terkait

Tutorial Membuat Login Facebook Dengan PHP
4/ 5
Oleh

Berlangganan

Suka dengan artikel di atas? Silakan berlangganan gratis via email

2 default-disqus

May 17, 2017 at 10:56 PM delete

dbconfignya itu kita buat sendiri om? trus itu dbname sama password isinya yang mana?

Reply
avatar