Membuat Captcha dengan PHP
"CAPTCHA
atau Captcha adalah suatu bentuk uji tantangan-tanggapan (challange-response
test) yang digunakan dalam perkomputeran untuk memastikan bahwa jawaban tidak
dihasilkan oleh suatu komputer. Proses ini biasanya melibatkan suatu komputer
(server) yang meminta seorang pengguna untuk menyelesaikan suatu uji sederhana
yang dapat dihasilkan dan dinilai oleh komputer tersebut."
CAPTCHA.
(2010, Maret 15). Wikipedia, . Diakses pada 14:45, Maret 25, 2010 dari
http://id.wikipedia.org/w/index.php?title=CAPTCHA&oldid=2986211.
Yang perlu
diperhatikan dalam membuat captcha di PHP adalah librari PHP GD sudah
terinstall. Untuk mengetahui PHP GD sudah terinstall, buatlah sebuah file
dengan nama phpinfo.php dan isi dengan script di bawah:
- <!--phpinfo.php-->
- <?
- phpinfo();
- ?>
Tempatkan file
phpinfo.php ini di root directory webserver dan kemudian akses file ini
menggunakan browser. Jika PHP GD sudah terinstall maka akan terlihat setting
PHP GD seperti di bawah:
Jika PHP GD
belum terinstall silahkan kunjungi link http://id2.php.net/manual/en/book.image.php untuk
mengetahui cara menginstall PHP GD.
Ada tiga
langkah singkat dan mudah membuat captcha dengan PHP, seperti berikut:
Buatlah
sebuah image dengan tipe *.jpg dengan ukuran 60 x 30 px atau sesuai selera
dengan warna background sesuai selera. Untuk membuat background image ini, bisa
menggunakan MS paint, photoshop atau Gimp jika menggunakan OS linux. Contoh:
2. Membuat Script Captcha
dengan PHP
Buatlah
sebuah file dengan nama captcha.php dan isi dengan script di bawah
- <?php
- //captcha.php
- session_start();
- $alphaNumeric = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
- $random = substr(str_shuffle($alphaNumeric), 0, 5);
- $image = imagecreatefromjpeg("path/to/background.jpg");
- $textColor = imagecolorallocate ($image, 0, 0, 0); //black
- imagestring ($image, 5, 5, 8, $random, $textColor);
- $_SESSION['image_random_value'] = md5($random);
- header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
- header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
- header("Cache-Control: no-store, no-cache, must-revalidate");
- header("Cache-Control: post-check=0, pre-check=0", false);
- header("Pragma: no-cache");
- header('Content-type: image/jpeg');
- imagejpeg($image);
- imagedestroy($image);
- ?>
3. Implementasi Script Captcha
Buatlah
sebuah file dengan nama implement-captcha.php dan isi dengan script di
bawah:
- <!--implement-captcha.php-->
- <?php
- if($_POST['submit']){
- session_start();
- if(md5($_POST['pin']) == $_SESSION['image_random_value']){
- echo '<p>You are people</p>';
- }else{
- echo '<p>Are you human being?</pa>';
- }
- }
- ?>
- <form name="form1" method="post" action="">
- <img src="captcha.php?date=<?php echo date('YmdHis');?>" alt="security image" />
- <div>
- Input Text Above: <input type="text" name="pin" />
- <input type="submit" name="submit" value="Submit" />
- </div>
- </form>
Dengan
melakukan tiga langkah di atas anda telah bisa membuat captcha menggunakan PHP.
Download Tutorial
0 comments: