Setelah sebelumnya kita membahas Pengertian CAPTCHA sekarang
pada kesempatan kali ini kita akan membahas bagaimana cara pembuatan CAPTCHA dengan menggunakan fungsi GD pada PHP,
Sebelum kita masuk ke script siapkan dulu beberapa file
berikut ini:
Font => digunakan untuk menentukan tampilan jenis text
pada captcha
Gambar => digunakan untuk background captcha
Kurang lebih letak file-filenya seperti gambar dibawah ini
Langsung saja berikut ini adalah langkah-langkahnya
1. Buatlah captcha.php
<?php session_start(); header("Content-type: image/jpg"); //generate Code function RandomCode($max){ //Huruf dan angka yang akan di acak $char = array("A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Y", "Z","a","b","c","d","e","f","g","h","j","k","l","m","n","p","q","r","s","t","u","v","w","x", "y","z","1","2","3","4","5","6","7","8","9"); $keys = array(); while(count($keys) < $max) { $x = mt_rand(0, count($char)-1); if(!in_array($x, $keys)) { $keys[] = $x; } } $random=''; foreach($keys as $key => $val){ $random .= $char[$val]; } return $random; } $font='./font/VeraMoBd.ttf'; //setting font yang akan digunakan $images='./images/bg.jpg'; //gambar yang akan digunakan sebagai background $im = imagecreatefromjpeg("$images")or die("Cannot Initialize new GD image stream"); $text_color = imagecolorallocate($im, 45, 220, 45); //menentukan warna text //Generate kode yang akan dituliskan pada gambar sebanyak 6 $text=RandomCode(6); //Buat sessi untuk pengecekan pada halaman lain $_SESSION['captcha']=$text; //Tuliskan text pada gambar imagettftext($im, 40, 0, 20, 60, $text_color, $font, $text); imagejpeg($im); imagedestroy($im); ?>
2. Buat index.html
File ini adalah sebagai file pertama kali dijalankan ketika kita
membuka captcha sebenarnya anda bisa membuatnya dengan file index.php ataupun index.html
<form method="post" name="frm" action="cek-captcha.php"> Masukkan kode dibawah ini: <br /> <input type="text" name="captcha" /> <br /> <img src="captcha.php" /> <br /> <input type="submit" name="btnCaptcha" value="Ok" /> </form>
Pada file di atas dapat kita lihat bahwa kita hanya
menggunakan perintah html image seperti biasa untuk menampikan captcha pada
halaman index / login
Yaitu pada script
3. Buat cek-captcha.php
Script ini digunakan untuk melakukan pengecekan kebenaran
kode yang di masukkan oleh user. Struktur dari script cek-captcha.php adalah
sebagai berikut :
<?php session_start(); if($_POST['captcha'] == $_SESSION['captcha']){ echo 'Kode yang anda masukkan benar, yaiut <font size="5">'.$_SESSION['captcha'].'</font>'; } else{ echo 'Kode yang anda masukkan salah, seharusnya <font size="5">'.$_SESSION['captcha'].'</font><br /> Bukan <font size="5">'.$_POST['captcha'].'</font>'; } ?>
Cukup sekian dulu pembahasan Membuat CAPTCHA sederhana dengan PHP apabila ada pertanyaan atau masukan silahkan tinggalkan di komentar,
wah kayaknya sulit juga,,hehehe
BalasHapuscara buat captcha buat tombol login langsung di blog gimana ya om ???
BalasHapus