Home / / PHP / PHP : Membuat Script Captcha Berbentuk Soal Hitungan Matematika
Captcha
Captcha

PHP : Membuat Script Captcha Berbentuk Soal Hitungan Matematika

Captcha

Captcha

Udah hampir 2 minggu libur update blog, ketemu-ketemu udah bulan puasa ya sobat blogger. masih pada puasa kan bagi yang jalanin hehhe. Oke langsung aja ya sesuai dengan judul artikelnya Membuat Script Captcha Berbentuk Soal Hitungan MatematikaBosen dong dengan model captha yang itu-itu aja paling mentok perpaduan huruf sama angka hehe. Nah kali ini kita akan membuat Captha yang agak berbeda, dengan berbentuk soal hitungan matematika.

Bagaimana ide membuat scriptnya???  pertama nantinya kita generate dua buah bilangan bulat mulai dari 0 s/d 10 atau dengan range sembarang alias terserah Anda. Boleh juga 0 s/d 99 atau -99 s/d 99 atau boleh juga ratusan, atau ribuan dst, terserah Anda Dua bilangan ini nantinya akan muncul di kode captcha nya. Kemudian, pilih secara acak juga operator nya, apakah penjumlahan, pengurangan atau perkalian. Setelah itu, hitung hasil operasi dari kedua bilangan tersebut dan kemudian simpan hasilnya dalam sebuah session.

Dengan hasil perhitungan yang disimpan dalam session itulah, kita bandingkan dengan hasil jawaban yang diisikan oleh pengunjung situs. Jika hasilnya sama, maka kode captcha benar. Namun jika tidak sama, maka kode captcha salah.

Demikian ide pembuatannya, sekarang kita bisa melakukan codingnya. Untuk script captcha ini, saya buat dalam gaya OOP. Di sini saya membuat class dengan nama ‘mathcaptcha’. Berikut ini isi class nya.

captcha.php

Keterangan:

Di dalam class ‘mathcaptcha’ di atas, ada beberapa method yang saya buat yaitu initial()generatekode()showcaptcha() dan resultcaptcha(). Kegunaan dari method initial() adalah mengenerate secara acak dua buah operand atau bilangan, serta operator aritmatikanya. Dua bilangan dipilih acak dari bilangan 0 s/d 99. Sedangkan tanda operator aritmatikanya dipilih salah satu secara acak dari 3 pilihan, yaitu: +, – dan x.

Selanjutnya untuk method generatekode() digunakan untuk mengenerate hasil perhitungan dari dua bilangan dan operator yang dipilih secara acak tadi. Selanjutnya hasilnya disimpan dalam sebuah session bernama $_SESSION['kode'].

Method showcaptcha() nantinya digunakan untuk menampilkan kode captcha nya, yang terdiri dari 3 bilangan dan tanda operator aritmatikanya.

Terakhir, method resultcaptcha() digunakan untuk membaca kode hasil operasi matematikanya.

Setelah class ‘mathcaptcha’ dibuat, sekarang kita implementasikan dalam sebuah form. Perhatikan contoh script form berikut ini

index.php

Nah ini tampilan formnya :

Tampilan Form Entri

Tampilan Form Entri

 

Kemudian bagaimana dengan script pemrosesan form setelah disimpan. ini dia scriptnya.

submit.php

Nah,  mudah dan sederhana bukan membuatnya. Selamat mencoba dan ada baiknya bilangannya jangan besar-besar ya hasilnya, supaya pengunjung situs atau yang mengentri form tidak terlalu pusing mencari jawabannya.

Berikut tampilan form setelah diklik simpan

Setelah klik simpan

Setelah klik simpan

 

Selamat mencoba, Seneng bisa berbagi :)

 

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Anda Mungkin Menyukai Iniclose