Langsung ke konten utama

Membuat CAPTCHA sederhana dengan PHP


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>';
}
?>
Script ini memanfaat session yang telah dibuat pada saat script captcha diload pada halaman index. jika kode yang di inputkan user sesuai dengan session yang sudah ada, maka akan ditampilkan pesan sukses, begitu pula sebaliknya akan ditampilkan pesan kesalahan jika kode yang di inputkan oleh user salah.anda bisa download file lengkap captcha, klik icon download di bawah ini

http://www.4shared.com/zip/Utn-Zo-Cba/captcha.html
Cukup sekian dulu pembahasan Membuat CAPTCHA sederhana dengan PHP apabila ada pertanyaan atau masukan silahkan tinggalkan di komentar, 

Komentar

  1. wah kayaknya sulit juga,,hehehe

    BalasHapus
  2. cara buat captcha buat tombol login langsung di blog gimana ya om ???

    BalasHapus

Posting Komentar

Kritik, Saran dan Komentar Kami tunggu

Postingan populer dari blog ini

Kekuatan dan Kelemahan Tipe - Tipe Pokemon

Tipe - Tipe Pokemon Demam pokemon kian menginkat, buat kami yang gemar memainkannya mimin beri daftar kekuatan dan kelemahan tiap tipe pokemon agar membatu dalam battel di gym. tiap - tiap pokmon dikelompokan kedalam 18 tipe yang berbeda diantarnya  Normal, Fighting, Flying, Poison, Ground, Rock,Steel, Fire, Psychic, Ice,  Bug, Grass, Water, Electric, Ghost, Dragon, Fairy dan Drak Setiap Pokemon dapat memiliki satu atau dua Tipe sekaligus. Contoh, Pikachu merupakan Pokemon bertipe Electric, sedangkan Bulbasaur merupakan Pokemon dengan Tipe Grass sekaligus Poison. Ada total 151 Pokemon, 84 diantaranya hanya memiliki satu Tipe sedangkan 67 Pokemon memiliki dua Tipe. Pokemon yang tipenya sama, memiliki kekuatan dan kelemahan yang sama juga saat Battle. Misal, Pokemon Tipe Poison melawan Tipe Poison, damage yang akan diterima akan setara. Di sisi lain, Pokemon Tipe Water mampu melakukan attack dengan damage besar ke Pokemon Tipe Fire yang lemah terhadap ser...

Macam-Macam Topologi Jaringan Komputer

Klikartikel.com - Pengertian topologi jaringan komputer yaitu suatu teknik atau cara untuk menyambungkan komputer ke beberapa komputer sekaliguan menjadi suatu jaringan yang terkoneksi satu dengan yang lainya. Ada banyak jenis topologi jaringan komputer didunia ini namun yang paling sering digunakan ada 5 jenis jaringan yaitu topologi jaringan ring, topologi jaringan start, topologi jaringan bus, topologi jaringan mesh dan topologi jaringan tree. Berikut ini pembahasaan dari tipe - tipe topologi jaringan. 1. Topologi Ring Topologi ring yaitu teknik menyambungkan komputer dengan cara setiap komputer di hubungkan dengan komputer yang lain dan seterusnya sampai kembali ke komputer pertama yang nantinya akan membentuk seperti lingkaran sehingga topologi ini sering disebut dengan ring. Komputer 1 akan mengirim file atau berkomunikasi dengan komputer 4, maka data akan melewati komputer 2 dan komputer 3 sampai data diterima oleh komputer...

Peringkat dan Jenis Processor Pada Android

Sebenarnya ada banyak jenis processor yang digunakan untuk perangkat android yang kita gunakan, tapi pada postingan kali ini saya hanya membagikan processor android yang sering digunakan saat ini beserta ranking kekuatan dan performa terbaik pada processor itu sendiri. Perlu diingat, informasi yang saya tulis dibawah ini mungkin belum bisa dikatakan 100% benar, karena saya hanya punya sedikit referensi untuk mengumpulkan data ini. Snapdragon  Yang pertama ada Processor Snapdragon. Processor Snapdragon merupakan processor android terbaik ( menurut adonbpc ), karena processor ini memiliki performa yang sangat baik dibanding processor android lainnya yang setara dengan seri processor ini. Processor ini selalu menghadirkan teknologi terbaru dan pastinya bertenaga dan didukung dengan keunggulan seperti seperti menghasilkan grafik yang lebih tinggi, penggunaan batrai yang hemat, serta keunggulan layar yang menghasilkan resolusi tinggi. Peringkat menurut performa terbaik Snapd...