Malam sobat blogger, pada kesempatan kali ini saya akan share tentang cara membuat Chaptcha anti SPAM dengan menggunakan PHP.
Contohnya bisa dilihat pada gambar dibawah ini:
Okeh, langsung saja ke topik permasalahannya....
Bagaimana cara buatnya...?!
Pertama-tama buat file PHP dengan nama chaptcha.php
Copykan script dibawah ini:
Selanjutnya buat file baru dengan nama index.php
Contohnya bisa dilihat pada gambar dibawah ini:
Okeh, langsung saja ke topik permasalahannya....
Bagaimana cara buatnya...?!
Pertama-tama buat file PHP dengan nama chaptcha.php
Copykan script dibawah ini:
<? session_start(); //untuk membuat angka dan huruf yang randome $str='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstupwxyz0123456789'; //ambil 5 string yang bisa terdiri dari angka dan huruf $rand=substr(str_shuffle($str),0,5); //fungsi acak $no=rand(1,3); //menempelkan angka tadi ke sebuah gambar background yang sudah di tetapkan sebelumnya. $image=imagecreatefromjpeg("chaptcha.jpg"); $font=5; $black=imagecolorallocate($image,0,0,0); $y=(imagesy($image)-imagefontheight($font))/2; imagestring($image,$font,8,$y,$rand,$black); //membuat session string randome $_SESSION['RandVal']=md5($rand); header('Content-type:image/jpeg'); imagejpeg($image); imagedestroy($image); ?>
Selanjutnya buat file baru dengan nama index.php
<html> <head> <title>Code Chaptcha</title> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> </head> <body> <form action="verifikasi.php" method="post" name="form1"> <table width="100%" border="0"> <tr > <td width="8%" align="left"><font face="verdana" size="2">Nama</font></td><td width="1%">:</td><td width="91%" align="left"> <input type="text" size="30" name="nama" id="nama"></td> </tr> <tr> <td align="left"><font face="verdana" size="2">Email</font></td><td>:</td><td align="left"> <input type="text" name="email" id="email" size="30"></td> </tr> <tr> <td align="left" valign="top"><font face="verdana" size="2">Pesan</font></td><td>:</td> <td align="left"><textarea name="pesan" id="isi" cols="23" rows="5"></textarea></td> </tr> <tr> <td align="left" valign="top"> </td> <td valign="top"> </td> <td align="left"><img src="chaptcha.php" border="0"/></td> </tr> <tr> <td align="left" valign="top">Input Kode </td> <td valign="top">:</td> <td align="left"><input name="kode" type="text" id="kode" size="30"></td> </tr> <tr> <td> </td> <td></td> <td><input type="submit" name="ok" value="POST"></td> </tr> </table> </form> </body> </html>
Nah sekarang sobat tinggal buatkan verifikasinya, jadi buat file baru lagi dengan nama verifikasi.php
<? session_start();?> <html> <head><title>Verifikasi</title> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> </head> <body> <? if(isset($_POST['ok']) && isset($_POST['kode'])){ $kode=trim($_POST['kode']); if(md5($kode)===$_SESSION['RandVal']){ echo "Kode yang Anda masukan benar, data anda adalah : "; echo "<br><br><i>"; echo "Nama Anda : ".$_POST['nama']."<br>"; echo "Email Anda : ".$_POST['email']."<br>"; echo "Pesan Anda : ".$_POST['pesan']."<br></i>"; }else{ echo "Maaf, Kode yang Anda masukan salah. silahkan "; ?><a href="index.php">ulangi!</a><? } } ?> </body> </html>
Untuk source lengkapnya sobat bisa download pada link yang ada di bawah ini: