Sebelum kita membahas tentang bagaimana membuat captcha image menggunakan php, terlebih dahulu mari kita mengenal apa itu captcha.

Apa itu captcha?

Captcha (Completely Automated Public Turing Test to Tell Computers and Humans Apart) adalah tes yang dilakukan oleh suatu aplikasi komputer guna membedakan komputer dan manusia. Pada umumnya captcha berupa gambar huruf atau angka yang didistorsi. Prinsip kerjanya yaitu memberikan tes sederhana. Misalnya menulis kembali angka / huruf yang muncul. Komputer tidak dapat menyelesaikan ujian tersebut, oleh karena itu yang dapat menyelesaikan ujian tersebut dianggap sebagai manusia.

Cara Membuat captcha menggunakan php

Untuk membuat captcha menggunakan php, kita akan membuat dua file yaitu index.php dan captcha_image.php.

  • File index.php berfungsi untuk menampilkan captcha dan form inputan
  • File captcha_image.php berisi logika untuk menyusun karakter acak yang nantinya akan dirender sebagai image dan ditampilkan pada halaman index.php. Pada tutorial kali ini kita hanya akan menggunakan karakter angka 0 s.d 9.

Konsep :

  • Ketika halaman index.php dijalankan, sistem akan mengeksekusi captcha_image.php
  • captcha_image.php akan menyusun angka secara acak, menyimpan hasilnya ke dalam session, dan merender image captcha.
  • Saat user mengisi form dan mengklik submit, sistem akan mencocokkan nilai session captcha dengan inputan user.

Step 1 : Buatlah file index.php dengan syntaks sbb :

Penjelasan index.php :

Di sini penulis menggunakan template Bootstrap agar tampilan lebih rapi dan tidak dipusingkan dengan pengaturan CSS, harap maklum jika baris kodenya agak panjang. Kita hanya akan fokus dengan kode di baris 2, 60 – 101.

  • Baris ke 2 : Memulai session. Seperti konsep yang telah disinggung di atas,  captcha ini bekerja menggunakan session. Untuk itu wajib hukumnya untuk memulai session.
  • Baris ke 60 – 71 : Pada baris ini kita membuat kondisi, jika button submit diklik maka sistem akan membandingkan data session captcha dengan inputan user, dan kondisi apabila hasilnya benar atau salah.
  • Baris 73 – 99 : Baris kode ini berisikan form input dan image captcha, yang akan ditampilkan pertama kali (ketika belum klik submit).

Step 2 : Buatlah file captcha_image.php dengan syntaks sbb

Step 3 : Masukkan font arial.ttf (atau font lain yang ingin anda gunakan) kedalam folder project anda. Untuk pengguna Windows, anda dapat mengambil font dari C:\Windows\Fonts kemudian copy dan paste ke C:\xampp\htdocs\folderprojectanda.

DEMO | DOWNLOAD

 

Anda hanya perlu membuat captcha_image.php sekali dan kemudian anda dapat menggunakan capthca_image.php untuk form yang lain.

Cukup mudah bukan, semoga bermanfaat. Terima kasih. Jangan lupa komentarnya ya. hehe.