Bagaimana Membuat Captcha Dengan PHP ? ... atau Cara membuat Captcha Dengan PHP... ? ... menjawab dari pertanyaan Tersebut Ebsof, akan menjelaskan dalam tutorial di bawah ini..
Captcha.. Captcha adalah salah satu bentuk validasi Form, yang digunakan untuk menangkal spam atau kejahatan yang orang lain lakukan terhadap aplikasi. Captcha dapat berupa gambar, tulisan, Penjumlahan Matematika. dan sebagainya..
Berikut ini captcha yang akan kita buat :
Cukup mantap bukan,,,,? Dengan ini robot akan kewalahan untuk malakukan spam... weeeeeee
Langsung aja.. Kita Masuk dalam Tutorial Membuat Captcha Dengan PHP:
1.Buka editor kesayangan anda.. buatlah file "captcha.php" berikut ini codenya :
2. Setelah itu, buat file "index.php" untuk membuat Form ... berikut ini script nya :
3. Yang Terakhir buat file "post.php" digunkan sebagai proses form ... berikut script nya :
5. Download File Font nya supaya bisa keluar captcha nya .
6. Selesai.. Jangan lupa Simpan di satu Folder ke 4 file tersebut (index.php, post.php, font ,captcha.php)
Captcha.. Captcha adalah salah satu bentuk validasi Form, yang digunakan untuk menangkal spam atau kejahatan yang orang lain lakukan terhadap aplikasi. Captcha dapat berupa gambar, tulisan, Penjumlahan Matematika. dan sebagainya..
Contoh : pada Aplikasi Buku Tamu.. Jika ditambah lagi dengan Cpatcha.. pastil lebih full.. tinggal di kombinasikan dengan script di bawah ini
Berikut ini captcha yang akan kita buat :
Cukup mantap bukan,,,,? Dengan ini robot akan kewalahan untuk malakukan spam... weeeeeee
Langsung aja.. Kita Masuk dalam Tutorial Membuat Captcha Dengan PHP:
1.Buka editor kesayangan anda.. buatlah file "captcha.php" berikut ini codenya :
<?php class RandomChar{ function LoopChar($min, $max){ for($i=$min;$i<=$max;$i++){ $ret .= chr($i); } return($ret); } function GenerateRandomChar($digit, $capital, $small, $number){ if($number) $data = $this->LoopChar(48, 57); if($capital) $data .= $this->LoopChar(65, 90); if($small) $data .= $this->LoopChar(97, 122); $ret = $data[mt_rand(0, (strlen($data)-1))]; for($i=1;$i<$digit;$i++){ $ret .= $data[mt_rand(0, (strlen($data)-1))]; } return($ret); } } class captcha extends RandomChar{ function captcha(&$session, $width, $height, $chars){ $fontfile = "comic.ttf"; $fontsize = 11; $code = $this->GenerateRandomChar($chars, true, false, false); //$imgBg = imagecreatefromjpeg("captcha/captchabg.jpg"); $imgDst = imagecreate($width, $height); //imagecopy($imgDst, $imgBg, // 0, 0, 0, 0, // imageSX($imgBg), // imageSY($imgBg)); imagecolorallocate($imgDst, 255, 255, 255); //dots $area = ($width*$height)/5; $dots_color = imagecolorallocate($imgDst, 255, 0, 255); for($i=0;$i<$area;$i++){ imagefilledellipse($imgDst, mt_rand(0, $width), mt_rand(0, $height), 1, 1, $dots_color); } //text $textbox = imagettfbbox($fontsize, 0, $fontfile, $code); $textcolor = imagecolorallocate($imgDst, 0, 0, 255); imagettftext($imgDst, $fontsize, 0, ($width-$textbox[4])/2, ($height-$textbox[5])/2, $textcolor, $fontfile, $code); imagejpeg($imgDst); //imageDestroy($imgBg); imageDestroy($imgDst); $session = $code; } } session_start(); header("Content-type: image/jpeg"); $width = $_GET['width'] ? $_GET['width'] : 100; $height = $_GET['height'] ? $_GET['height'] : 20; $chars = $_GET['chars'] ? $_GET['chars'] : 6; //$session = &$_SESSION['securityCode']; $captcha = new captcha($_SESSION['securityCode'], $width, $height, $chars); ?>
2. Setelah itu, buat file "index.php" untuk membuat Form ... berikut ini script nya :
<form method="post" action="post.php"> <img src="captcha.php?random=<?echo(mt_rand());?>"/><br/><br/> <input type="text" name="captcha" size="10"/> <input type="submit" value="Submit"/> </form>
3. Yang Terakhir buat file "post.php" digunkan sebagai proses form ... berikut script nya :
<?php session_start(); //Pengecekkan terhadap captcha yang di masukkan user Jika bernilai benar if(isset($_SESSION['securityCode']) && $_SESSION['securityCode'] == $_POST['captcha']){ //Jalankan query yang ingin anda jalankan echo('Security Code Benar'); unset($_SESSION['securityCode']); //Jika captcha yang di masukkan tidak benar /salah }else{ //tampilkan pesan echo('Security Code Salah'); } ?><br/> <a href="index.php">[balik]</a>
5. Download File Font nya supaya bisa keluar captcha nya .
6. Selesai.. Jangan lupa Simpan di satu Folder ke 4 file tersebut (index.php, post.php, font ,captcha.php)
Untuk Source Code nya Silahkan Download Script Captcha Dengan PHP
Demikianlah Artikel "Membuat Captcha Dengan PHP" semoga bermanfaat..