Menggunakan ReCaptcha 2.0 dengan CodeIgniter

New Recaptcha

Bot dan spam merupakan salah satu dari sekian masalah utama web developer. Iya, selain klien yang rewel dan telat bayar tentunya. Kali ini gue akan sharing salah satu cara untuk mengurangi spam dan bot di situs kalian dengan menggunakan Google ReCaptcha 2.0.

Google ReCaptcha 2.0 disebut juga No Captcha ReCaptcha karena user tidak perlu memasukkan captcha untuk menunjukkan kalau dia bukan bot. User cukup melakukan klik pada kotak yang tersedia dan Google ReCaptcha akan mendeteksi apakah user adalah bot atau bukan.

Google ReCaptcha sebenarnya sudah memiliki library untuk PHP. Sayangnya, gue sedang ada proyek untuk membuatnya dengan salah satu framework favorit gue, CodeIgniter. Setelah googling sana-sini, akhirnya gue sampai di satu halaman github hok00age.  Sekarang gue akan share step by step-nya:



1. Download library yang diperlukan di sini. Setelah itu taruh di folder application pada proyek CI yang sedang dikerjakan.

2. Buka “application/config/recaptcha.php” dan masukkan SITE Key, SECRET Key dan bahasa yang diinginkan.
Site key dan secret key bisa didapatkan di sini
Bahasa yang bisa digunakan dapat dilihat di sini

3. Ketikkan code berikut pada file VIEW anda untuk menampilkan ReCaptcha:

<?php echo $this->recaptcha->render(); ?>

4. Ketikkan code berikut pada file CONTROLLER anda:

// Memanggil library
$this->load->library('recaptcha');

// Mendapatkan input recaptcha dari user
$captcha_answer = $this->input->post('g-recaptcha-response');

// Verifikasi input recaptcha dari user
$response = $this->recaptcha->verifyResponse($captcha_answer);

// Proses
if ($response['success']) {
    // Code jika sukses
} else {
    // Code jika gagal
}

5. ReCaptcha telah sukses di pasang!

Jika ada pertanyaan, bisa share di komen nanti gue akan bantu jawab. 🙂