Cara menggunakan php facebook

Download (GitHub)Pernah melihat form pendaftaran yang memberikan pilihan untuk mendaftar atau login menggunakan akun Facebook? Kita juga bisa membuatnya sendiri dengan mudah. Dengan memberikan pilihan mendaftar atau login dengan akun Facebook, tentunya akan memudahkan pengguna situs kita, karena tidak perlu lagi mendaftar dengan email, password, dan mengisi data lainnya. Saat login juga tidak perlu memasukkan username / password, cukup login menggunakan akun Facebook yang sudah ada. Tentu akan lebih cepat dan mudah.

Dalam posting ini, kita akan menggunakan CodeIgniter 3 dan Facebook SDK. Sebelum memulai, pastikan juga kamu sudah menginstal Composer di komputer kamu, karena kita akan menggunakan Composer untuk mendownload SDK Facebook (bisa juga didownload manual, tapi lebih mudah menggunakan Composer).

[Baca: Cara Install dan Menggunakan Composer di Windows]

Jika sudah siap, mari kita mulai. Jika kamu belum begitu paham CodeIgniter, silahkan ikuti dulu step by step, tetapi kalau sudah paham, boleh juga di skip beberapa langkahnya. Di akhir posting ini saya sudah menyertakan file zip yang sudah siap digunakan.

Daftar Isi

  • 1 Membuat App Facebook
  • 2 Mendapatkan ID Aplikasi (app id) dan App Secret
  • 3 Menyiapkan Database
  • 4 CodeIgniter
  • 5 Membuat File Konfigurasi
  • 6 Mengatur Autoload
  • 7 Mengatur Konfigurasi Database
  • 8 Membuat Library Baru
  • 9 Membuat Model
  • 10 Membuat Controller
  • 11 Membuat Halaman Dashboard
  • 12 Terkait

Membuat App Facebook

Untuk membuat login with Facebook di aplikasi kita, kita harus membuat aplikasi Facebook terlebih dahulu. Untuk membuat aplikasi Facebook, silahkan buka: https://developers.facebook.com/apps/.

Pada halaman tersebut, klik “Tambahkan sebuah Aplikasi Baru“.

Cara menggunakan php facebook

Kemudian akan muncul jendela pop up untuk kita membuat aplikasi, silahkan masukkan nama aplikasi dan email kontak. Kemudian klik tombol “Buat ID Aplikasi”.

Cara menggunakan php facebook

Saat membuat aplikasi, mungkin kamu akan diminta memasukkan Captcha, silahkan isi saja dengan benar.

Mendapatkan ID Aplikasi (app id) dan App Secret

Untuk menghubungkan Facebook dengan aplikasi kita, kita perlu menyimpan / mencatat app id dan app secret dari aplikasi kita. App ID akan tampil setelah kita membuat aplikasinya.

Cara menggunakan php facebook

ID Aplikasi ada dibagian atas seperti pada gambar, silahkan dicatat terlebih dahulu. Kemudian kita perlu mendapatkan app secretnya, silahkan klik “Pengaturan -> Dasar”

Cara menggunakan php facebook

Silahkan catat app id dan app secretnya. Di halaman pengaturan tersebut juga kita bisa mengatur nama, domain, email, logo dan kategori aplikasi kita ini. Silahkan kamu ubah sesuai keinginan (tapi tidak wajib, yang penting sudah punya app id dan app secretnya).

Selanjutnya, buka “Tinjauan Aplikasi -> Izin dan Fitur” dan cari izin “user_link” dan “user_gender” dan klik “Kirim Permintaan“. Hal ini supaya nanti aplikasi kita bisa mengambil data tersebut dari Facebook.

Cara menggunakan php facebook

Jika sudah, kita mulai dengan CodeIgniter.

Menyiapkan Database

Sebelumnya, kita harus membuat database terlebih dahulu dan tabelnya. Sebagai contoh disini saya membuat tabel dengan nama “facebook_users“, kamu juga bisa membuat tabel dengan nama lain atau mengintegrasikan dengan tabel yang sudah ada. Berikut querynya.

CREATE TABLE `facebook_users` (
`id` BIGINT(20) NOT NULL AUTO_INCREMENT,
`oauth_provider` VARCHAR(64) NOT NULL COLLATE 'utf8mb4_general_ci',
`oauth_uid` VARCHAR(64) NOT NULL COLLATE 'utf8mb4_general_ci',
`email` VARCHAR(255) NOT NULL COLLATE 'utf8mb4_general_ci',
`name` VARCHAR(255) NOT NULL COLLATE 'utf8mb4_general_ci',
`profile_picture` VARCHAR(255) NOT NULL COLLATE 'utf8mb4_general_ci',
`created_at` DATETIME NOT NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`) USING BTREE
)
COLLATE='utf8mb4_general_ci'
ENGINE=InnoDB
;

Dalam tabel tersebut terdiri dari field:

  • Nama
  • Email
  • Foto profil
  • OAuth Provider
  • OAuth ID

Kamu bisa juga menyesuaikan tabelnya sesuai dengan kebutuhan kamu, yang diatas hanya contoh dasar saja.

CodeIgniter

Pertama, siapkan sebuah instalasi CodeIgniter yang baru, kamu boleh juga menggabungkannya dengan aplikasi CodeIgniter kamu yang sudah ada, tetapi disini supaya lebih mudah saya membuat instalasi CodeIgniter yang baru.

Cara menggunakan php facebook

Seperti pada contoh diatas, saya membuat folder “ci-login-with-facebook” di htdocs. Jika sudah, buka file “application/config/config.php” dan ubah base_url menjadi seperti berikut:

$config['base_url'] = 'http://localhost/ci-login-with-facebook/';

Jika sudah, sekarang kita akan menginstal Facebook Graph SDK menggunakan Composer. Buka terminal di komputer kamu untuk menggunakan composer.

Pertama, ketik perintah “cd c:\xampp\htdocs\ci-login-with-facebook” dan tekan “Enter” untuk masuk ke folder CodeIgniter kita. Silahkan sesuaikan dengan punya kamu.

Cara menggunakan php facebook

Setelah itu, ketikkan perintah “composer require facebook/graph-sdk” untuk menginstal Facebook Graph SDK. Pastikan komputer kamu tersambung ke internet. Tunggu saja sampai selesai installasinya.
Jika sudah selesai tampilannya akan seperti ini.

Cara menggunakan php facebook

Jika sudah, buka file “application/config/config.php” dan ubah composer_autoload menjadi TRUE (baris ke 139)

$config['composer_autoload'] = 'vendor/autoload.php';

Membuat File Konfigurasi

Kita perlu membuat file konfigurasi untuk menyimpan app id dan app secret kita. Buatlah file “facebook.php” di folder “application/config/” dan isikan dengan kode berikut.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

$config['facebook']['app_id'] = ''; //masukkan app id disini
$config['facebook']['app_secret'] = ''; //masukkan app secret disini
$config['facebook']['default_graph_version'] = 'v2.10';

Silahkan masukkan app id dan app secret dari aplikasi facebook diatas tadi.

Mengatur Autoload

Karena kita nanti akan menggunakan database dan session, maka sebaiknya database dan session kita set sebagai autoload, tujuannya supaya tidak perlu menulis kode berulang-ulang dan juga supaya lebih mudah diatur ketika aplikasi nantinya sudah semakin besar.

Buka file “application/config/autoload.php” dan edit kode pada baris ke 61 (autoload libraries) menjadi seperti berikut:

$autoload['libraries'] = array('session', 'database');

Mengatur Konfigurasi Database

Supaya bisa menggunakan database, kita perlu mengatur konfigurasi databasenya terlebih dahulu. Buka file “application/config/database.php” dan atur konfigurasinya disana.

Membuat Library Baru

Supaya lebih mudah menggunakan sdk dari Facebook, alangkah baiknya jika membuat sebuah library tersendiri. Disini saya sudah menyiapkan library yang saya buat untuk menangani proses login dan register dengan Facebook.

Buatlah file “Facebook.php” di folder “application/libraries” dan pastekan kode berikut.

Membuat Model

Model adalah bagian yang akan menghubungkan aplikasi kita dengan database. Buatlah file “Facebook_model.php” di folder “application/models” kemudian pastekan kode berikut:

Membuat Controller

Kita akan membuat dua Controller, yaitu controller Register dan controller Login. Seperti namanya, controller Register untuk menangani proses register / pendaftaran, dan controller Login untuk menangani proses login / masuk. Sebenarnya kita bisa membuatnya menjadi satu, tapi supaya lebih mudah sebaiknya kita pisahkan saja dulu.

Silahkan buat controller Register.php dan Login.php di folder “application/controllers“.

Pada controller Register.php isikan kode berikut ini:

Kemudian buat file “register_with_facebook.php” di folder “application/views/” dan isikan dengan kode berikut:

Kemudian, pada controller Login.php pastekan kode berikut:

Kemudian, buatlah file “login_with_facebook.php” di folder “application/views” dan pastekan kode berikut:

Membuat Halaman Dashboard

Halaman dashboard adalah halaman yang dituju setelah berhasil login atau berhasil mendaftar. Disini kita akan membuat halaman dasbor yang sederhana saja, hanya menampilkan data dari user yang sedang login.

Buat file controller “Dashboard.php” di folder “application/controllers” dan pastekan kode berikut:

Untuk file viewnya, silahkan buat file “dashboard.php” di folder “application/views” dan pastekan kode berikut:

Nah sudah selesai paste-pastenya. Saatnya kita coba.

Pertama, buka di browser: http://localhost/ci-login-with-facebook/index.php/register untuk mencoba mendaftar. Tampilannya akan seperti ini:

Cara menggunakan php facebook

Saat kita klik “Daftar dengan Facebook“, maka akan diarahkan ke Facebook.

Cara menggunakan php facebook

Kemudian, jika berhasil maka akan diarahkan ke halaman dasbor.

Cara menggunakan php facebook

Mudah bukan? Seperti itulah cara membuat authentikasi Facebook di CodeIgniter 3.

Berikut file lengkapnya jika kamu ingin mendownload yang sudah jadi, tinggal ganti app id dan app secretnya saja.

Download (GitHub)

Jangan lupa di star ya :v