Simple Captcha

By | September 27, 2020

Pengertian :

Captcha merupakan singkatan dari “Completely Automated Public Turing test to tell Computers and Humans Apart” ( Wikipedia ). dan dibuat untuk membedakan antara mesin ( bot ) dan manusia.

Implementasi :

Captcha sering kali digunakan untuk ‘mengamankan’ form dari serangan bot, contoh : pada form kontak, form pendaftaran, dsb. Kali ini, kita akan mencoba membuat sebuah simple captcha dengan menggunakan test matematika sederhana ( penjumlahan ).

file : captcha.php

[php]

< ?php
session_start();
$gbr = img.jpg; //gambar untuk background
//warna
$merah = 255; // range nya dari 0 – 255
$ijo = 255; //range nya = diatas 😀
$biru = 255;

//— mari menggambar —-
$acak1 = mt_rand(3,10); // nilai acak 1
$acak2 = mt_rand(6,20); // nilai acak 2
$strtampil = $acak1. + .$acak2;
$hasil = $acak1 + $acak2;
$bikingbr =imagecreatefromjpeg($gbr);
$teks = imagecolorallocate($bikingbr, $merah, $ijo, $biru);
imagestring($bikingbr, 5, 20, 10, $strtampil, $teks);
$_SESSION[‘capcay’] = $hasil;
header(Content-type: image/jpeg);
imagejpeg($bikingbr);
?>

[/php]

Script diatas akan menjumlahkan nilai random ( acak ). Nilai acak tersebut didapat dari fungsi mt_rand(). Hasil dari penjumlahan nilai acak tersebut akan di simpan kedalam sebuah session yang nantinya akan berfungsi untuk melakukan pengecekan input dari form.

file : form.php

[php]

< ?php
session_start();
if(isset($_POST[‘cek’])){
if($_POST[‘ccek’] == $_SESSION[‘capcay’]){
echo Lolos Validasi;
} else {
echo Salah;
}
}
?>

Simple Captcha

[/php]

File form.php adalah file yang digunakan sebagai input. Ketika tombol ‘submit’ ditekan, maka script akan melakukan pengecekan apakah input yang dimasukkan sudah sama dengan session yang dihasilkan sebelumnya pada file captcha.php

Demo dari kedua file diatas, dapat ditemukan disini .

Selamat mencoba 😉


Sumber https://www.rumahweb.com