Langsung ke konten utama

Tutorial PHP : Cara Membuat Captcha di PHP

Kita sering melihat sebuah Captcha ketika ingin membuat sebuah akun seperti email contoh : gmail.com. Captcha yang sering orang pakai adalah Captcha gambar yang mana Captcha tersebut menyuruh kita untuk menuliskan kata ataupun huruf yang ada pada gambar tersebut. Baru-baru ini juga ada Captcha yang menyuruh kita menandai "Saya bukan robot" setelah itu kita disuruh memilih seperti "Nama Jalan", "Buah", "Pohon", dan lain-lain. Berikut sedikit perkenalan dengan Captcha.
Tutorial PHP : Cara Membuat Captcha di PHP

Pengertian Captcha

CAPTCHA atau Captcha adalah suatu bentuk uji tantangan-tanggapan (challange-response test) yang digunakan dalam perkomputeran untuk memastikan bahwa jawaban tidak dihasilkan oleh suatu komputer. Proses ini biasanya melibatkan suatu komputer (server) yang meminta seorang pengguna untuk menyelesaikan suatu uji sederhana yang dapat dihasilkan dan dinilai oleh komputer tersebut. Karena komputer lain tidak dapat memecahkan CAPTCHA, pengguna manapun yang dapat memberikan jawaban yang benar akan dianggap sebagai manusia. Oleh sebab itu, uji ini kadang disebut sebagai uji Turing balik, karena dikelola oleh mesin dan ditujukan untuk manusia, kebalikan dari uji Turing standar yang biasanya dikelola oleh manusia dan ditujukan untuk suatu mesin. CAPTCHA umumnya menggunakan huruf dan angka dari citra terdistorsi yang muncul di layar. (sumber: https://id.wikipedia.org/wiki/CAPTCHA)

Dari sedikit pengertian diatas maka saya simpulkan bahwa captcha mencegah spam pada sebuah website. Dan pernahkah kita berpikir bagaimana cara membuat captcha dengan PHP ? apakah membuat captcha sendiri itu sulit ?

Sebenarnya membuat captcha untuk website kita sendiri tidak terlalu sulit karena kita bisa menggunakan $_SESSION pada PHP. Membuat captcha sendiri kita cukup menggunakan metode sederhana dan nanti kita dapat mengembangkan captcha sendiri ini agar lebih profesional dan dapat diperjual-belikan. Tanpa basa-basi sekarang coba kita praktekkan cara membuat captcha sendiri dengan php.

Membuat Captcha dengan PHP

Captcha yang akan kita buat sendiri kali ini adalah captcha bilangan matematika, bisa berupa menjadi tambahan, kurangan, perkalian, maupun pembagian. Kita juga bisa menggembangkan captcha yang kita buat ini agar bilangannya menjadi acak, kadang tambahan, kadang kurangan, kadang perkalian, dan kadang pembagian. It's Awesome Bro.
Disini saya hanya memberikan contoh sederhananya saja karena saya juga masih minim pengetahuan tentang PHP. Skip -

1. Buat File

Buatlah file dengan nama apa saja yang penting formatnya harus PHP. Dalam contoh ini saya menggunakan nama captcha.php, selanjutnya kita meggunakan angka acak dari 1 sampai 10 dengan menggunakan kode rand(1,10). Mari kita coba code tersebut.
Random Angka
<?php
echo rand(1,10)
?>

Simpan dan jalankan file captcha.php tersebut dan coba reload beberapa kali apakah angka yang dihasilkan berubah-ubah. Jika berubah maka tahap pertama kita berhasil. Next -

2. Konsep $_SESSION

Tahap kedua kali ini adalah kita coba merekam apa yang dihasilkan dari kode rand(1,10) tersebut dengan menggunakan $_SESSION pada php. Coba kita praktekkan kode tersebut.
Konsep $_SESSION
<?php
$_SESSION['angka_1'] = rand(1,10);
echo $_SESSION['angka_1'];
?>

Dari kode diatas akan menghasilkan kode random juga, tetapi kode randomnya sudah terekam pada $_SESSION['angka_1']. Sehingga kita menampilkan angka random tadi dengan menggunakan kode echo $_SESSION['angka_1'].
Untuk membuat bilangan seperti tambahan maka kita harus mempunyai kode random yang kedua. Kita bisa menggunakan $_SESSION['angka_2'] ataupun dengan nama lain yang menggambarkan bahwa itu adalah angka yang ke-2. Kawan bisa melihat contoh berikut.
Konsep $_SESSION
<?php
$_SESSION['angka_1'] = rand(1,10);
$_SESSION['angka_2'] = rand(1,10);
echo $_SESSION['angka_1'];
echo $_SESSION['angka_2'];
?>

Simpan kode tersebut dan jalankan. Maka kita akan mendapatkan dua buah angka yang mana masing-masingnya sudah diacak oleh sistem sehingga nanti kita hanya menentukan operasi bilangannya saja dalam hal ini saya menggunakan operasi "penjumlahan". Next -

3. Menentukan Operasi Bilangan

Sebelum membuat captcha sendiri dengan metode bilangan matematika, mari kita buat sebuah operasi bilangan yang mana nanti pengunjung akan menjawab berapa jumlah dari operasi bilangan yang kawan buat tadi, disini saya akan membuat operasi hitung tentang penjumlahan. Sebelumnya kita buat dulu $_SESSION['hasil'] untuk merekam hasil yang akan kita dapati nanti. Kawan bisa melihat kodenya seperti dibawah ini
Operasi Hitung
<?php
$_SESSION['angka_1'] = rand(1,10);
$_SESSION['angka_2'] = rand(1,10);
$_SESSION['hasil'] = $_SESSION['angka_1'] + $_SESSION['angka_2'];
echo $_SESSION['angka_1'] .' + '.$_SESSION['angka_2'] . ' = ' . $_SESSION['hasil'];
?>

Dari kode diatas maka sekarang tugas kita hanya membuat sebuah input yang mana nanti sebuah input tersebut akan digunakan oleh pengguna untuk mengetikkan hasil dari penjumlahan angka yang sudah dirandom pada $_SESSION['angka_1'] dan $_SESSION['angka_2'] tadi.

4. Membuat Input Hasil

Setelah kita mempraktekkan ketiga contoh diatas maka sekerang kita membuat inputan untuk membuat captcha sendiri dengan PHP. Sebelumnya kita buat dulu inputan agar pengguna bisa menginputkan hasil dari angka random kita tadi. Copy script berikut dan coba jalankan.
Membuat Inputan
<form method="post">
<input type="text" name="captcha" />
<input type="submit" name="submit" value="Cek Captcha" />
</form>

Dari script diatas maka kita akan mendapatkan sebuah inputan. Dari inputan tersebut kita coba gabungkan dengan PHP. Sebelumnya buat dulu file dengan nama hasil.php dan salin kodenya dibawah ini.
Kode captcha.php
<?php
session_start();
$_SESSION['angka_1'] = rand(1,10);
$_SESSION['angka_2'] = rand(1,10);
$_SESSION['hasil'] = $_SESSION['angka_1'] + $_SESSION['angka_2'];
?>
<form action="hasil.php" method="post">
<?php echo $_SESSION['angka_1'] .' + '.$_SESSION['angka_2'] . ' = '; ?> <input type="text" name="captcha" />
<input type="submit" name="submit" value="Cek Captcha" />
</form>

Sekarang kita buat file dengan nama hasil.php dan copy script dibawah ini.
Kode hasil.php
<?php
session_start();
if (isset($_POST['submit'])) {
if ($_SESSION['hasil'] == $_POST['captcha']) {
echo "Angka yang anda ketik sesuai";
} else {
echo "Angka yang anda ketik tidak sesuai";
}
}
?>

Simpan dan jalankan captcha.php maka ketika kita menginput hasil dari angka yang sudah diacak tersebut kita langsung ditujukan ke halaman hasil.php. Dihalaman hasil.php kita akan mendapati sebuah tulisan apakah hasil dari yang kita input tersebut telah sesuai dengan hasilnya atau belum. Untuk demonya kawan bisa melihat dihalam berikut.
Demo Captcha
Terima kasih telah membaca sebuah artikel Cara Membuat Captcha di PHP. Baca lebih banyak lagi artikel tentang PHP atau tentang HTML pada website ini. Dan jangan lupa untuk berbagi yang ada dibawah judul artikel ini. Jika masih ada kesulitan tentang penerapan PHP pada website bisa menggunakan komentar dibawah. Salam.

Komentar

Posting Komentar

Komentar dan Kritik kawan diperlukan agar dapat membangun pemula belajar kedepannya. Terima Kasih

Postingan populer dari blog ini

Tutorial Lengkap Membuat Short Link Sendiri Dengan PHP Mysql

Hallo kawan, berjumpa lagi nih sama toturial www.pemulabelajar.com. Kali ini kita akan membahas cara membuat short link sendiri . Pernah dong kawan menjumpai namanya short link, contoh sederhananya saja goo.gl . goo.gl akan membuat url site kita menjadi lebih pendek misalnya saja : http://www.pemulabelajar.com bisa menjadi goo.gl/Jiahs . Begitu juga tutorial kita membuat short link kali ini. Karena membuat short link kita sekarang menggunakan PHP Mysql maka kawan disarankan untuk membuat hosting untuk website yang akan dijadikan website short link kita sendiri, kawan bisa menggunakan layanan gratis seperti 000webhosting.com atapun idhostinger.com (recomended) selain gratis, pembuatan databasenya juga termasuk mudah dan juga tutorialnya sangat banyak digoogle kalau ada waktu saya akan membuatkan tutorial membuat hosting gratis untuk kawan. Membuat Short Link Saya anggap saja kawan sudah membuat hosting disalah satu tempat hosting diatas. Maka langkah a...

Belajar Power Design - Cara Membuat Project Menjadi Gambar

Cara Membuat Project Menjadi Gambar - Artikel ini akan membahas sedikit tentang Power Design dan Bagaimana merubah project power design menjadi sebuah gambar . Masalah ini sering dialami oleh pemula khususnya saya yang bingung bagaimana merubah sebuah project power design menjadi berupa gambar agar mudah dimuat ke sebuah karya tulis. Baca juga : Membuat Teks Rotasi Dengan Photoshop Apa itu Power Design ? Power design adalah sebuah paket program desain tools yang digunakan untuk membuat Visualisasi, dokumentasi dan mendesain suatu sistem perangkat lunak. Paket ini meliputi Process analyst Model (PAM), Data architect tools, Aplication modeler tools, dan Metawork tools. Power Design ini juga sering digunakan menjadi software untuk membuat Diagram Flow Diagram atau DFD . Bagaimana Merubah Project Menjadi Gambar ? Untuk merubah sebuah project pada power design menjadi sebuah gambar cukup mudah. Secara singkatnya kawan cukup memilih semua object yang akan dijadikan sebuah gambar, s...

Belajar Web - Membuat Website Responsive CSS

Sebelum kita meneruskan tutorial selanjutnya yaitu Belajar Membuat Website Responsive baiknya kita pelajari terlebuh dahulu apa aja yang akan kita bahas. Karena yang akan kita bahas selanjutnya adalah responsive web, maka diwajibkan mengerti fungsi script css yang ada di Belajar Desajn Website di html / php toturial sebelumnya. Apa itu float ? Apa itu width ? Apa itu height ? Apa itu clear: both ? Responsive ini memakai @media(max-width) atau @media(min-width) yang memiliki arti lebar maximal style dan lebar minimal yang kita masukkan di dalam @media tersebut. Sebelum memperlajari responsive menu sebaiknya lita pelajari dulu float, clear dan lain-lain. Karena @media tersebut hanya mengganti script css dari css global. Apa itu css global ? Nanti anda penjelasannya masing-masing. Apakah anda sudah ngerti dengan coding css diatas ? Jika belum, ada baiknya anda harus pelajari dulu scriptnya di toturial sebelumnya. Cara memperbaiki jika terjadi error atau kesalahan penulidan pada d...