Cara Membuat Captcha Dengan PHP
Cara Membuat Captcha Dengan PHP pada sebuah form input data atau login yang berfungsi sebagai teknik validasi dan pengecekan apakah yang melakukan login adalah robot atau manusia sebelum masuk ke dalam sistem. Membuat captcha dengan php adalah sama seperti membuat sebuah sistem keamanan pada form login atau input berupa gambar atau teks yang harus di validasi. Captcha biasanya berbentuk gambar atau teks di dalam gambar yang tidak dapat di copy paste, sehingga teks di dalam gambar tersebut harus di input manual. Inilah kenapa robot tidak dapat melakukan bot terhadap captcha, sebagai alasan sistem keamanan dasar.
Sesuai dengan judul artikel yang kami tulis yaitu cara membuat captcha dengan php maka pada tutorial kali ini kita akan membuat sebuah captcha dengan menggunakan php. Sebenarnya cara membuat captcha cukup mudah, yaitu hanya perlu membuat tulisan captcha dalam bentuk gambar agar tidak bisa di copy paste oleh bot. Karena tidak bisa di copas oleh robot, maka untuk memvalidasi captcha harus di input atau di tulis secara manual. Jadi membuat form login tanpa captcha sangatlah kurang aman seperti contoh ini membuat form login dengan php mysql.
Apa itu Captcha? Bagaimana pengertiann captcha itu sendiri? Captcha adalah singkatan dari Completely Automated Public Turing test to tell Computers and Humans Apart. Silahkann teman-teman terjemahkan ke Bahasa Indoensia, maka dari kepanjangan captcha tersebut dapat kita ambil kesimpulan bahwa captcha merupakan sebuah teknik untuk mengecek robot atau manusia. Captcha biasanya sebuah pengecekan atau pemeriksaan yang berbentuk gambar atau tulisan, biasanya captcha terdapat di sebuah form. Sehingga dapat dikatakan bahwa captcha bertujuan untuk memeriksa bahwa benar adanya yang mengisi form adalah manusia dan bukan robot atau komputer bot.
Cara Membuat Captcha Dengan PHP
Apa manfaat membuat captcha? Berikut adalah manfaat atau kegunaan captcha dalam sebuah form input dalam perannya di sitem keamanan.
- Mencegah Spam
- Mencegah serangan brute force
- Serta ada banyak lagi kegunaan dari captcha
Kenapa kita harus membuat captcha dengan php pada form input data? Beberapa alasan adalah karena banyak penyusup yang membuat bot dengan tujuan sekedar mengisi form. Dan beberapa melakukan spam melalui form input dan ada juga dengan tujuan yang kurang baik yaitu melakukan brute force pada form login. Dengan captcha maka tujuan dan kegunaan dari captcha ini adalah untuk menangkal bot yang mengisi form tersebut. Sehingga dapat menangkal spam pada form di website, captcha akan memeriksa yang mengisi form adalah manusia atau robot. Jika robot otomatis tidak akan bisa mengisi form karena ada captcha, bot tidak bisa mendeteksi tulisan apa yang terdapat dalam gambar captcha. Oleh karena itu captcha dibuat dalam bentuk gambar dengan tulisan di gambar tersebut. Berbeda dengan manusia yang mengisi form tentu bida karena manusia bisa membaca tulisan captcha dan kemudian bisa menuliskan kembali untuk di validasi.
Tutorial cara membuat captcha dengan php lengkap dengan coding dan penjelasan ini kami lakukan pada sistem operasi Windows 7. Menggunakan web server XAMPP ver5.6 include dengan database MySQL, untuk mengikuti tutorial ini pastikan komputer anda telah terinstall web server XAMPP tersebut.
Berikut adalah langkah - langkah bagaimana cara membuat captcha dengan php dan silahkan dengan langsung mencoba di setiap penjelasannya.
1. Siapkan direktori tutorial membuat captcha.
Direktori ini berfungsi untuk menjalankan tutorial membuat captcha melalui htdocs, misal nama foldernya adalah "captcha-php". Teman-teman boleh saja membuat dengan nama sendiri, tapi pastikan lokasi folder ini di direktori \xampp\htdocs\.
2. Homepage tutorial cara membuat captcha php.
Setelah membuat folder direktori, kemudian buatlah sebuah form dengan php, dan form inilah yang akan kita berikan captcha, sekaligus sebagai file homepage.
Simpan dengan nama index.php
<html> <head> <title>Tutorial Dasar Cara Membuat Captcha Dengan PHP</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <h2>Cara Mudah Membuat Captcha di PHP - Tutorial</h2> <div class="kotak"> <?php if(isset($_GET['pesan'])){ if($_GET['pesan'] == "salah"){ echo "<p>Captcha tidak sesuai ...!</p>"; } } ?> <p>Silahkan Isi Captcha Dengan Benar!</p> <form action="cek-captcha.php" method="post"> <table align="center"> <tr> <td>Captcha</td> <td><img src="captcha.php" alt="gambar" /> </td> </tr> <tr> <td>Input Captcha </td> <td><input name="nilaiCaptcha" size="23"/></td> </tr> <tr> <td> </td> <td><input type ="submit" value="Cek Captcha"/></td> </tr> </table> </form> </div> </body> </html>
3. Desain tampilan form input captcha dengan CSS.
Simpan dengan nama style.css
body{ font-family: "roboto"; background: #F4F4F4; } h1,h2,h3,p,a{ text-align: center; } .kotak{ margin: 10px auto; background: #fff; border-radius:5px; border:1px solid #FFA800; width: 400px; padding: 20px 0px; } .kotak table tr td{ padding: 5px; } .kotak table tr td input{ padding: 5px; font-size: 12pt; }
4. Desain tampilan gambar captcha.
Cara membuat captcha dengan php selanjutnya adalah membuat gambar dengan menentukan ukuran dapat menggunakan php imagecreate, imagecolorallocate dapat digenerate dengan coding php.
Simpan dengan nama captcha.php
<?php session_start(); header("Content-type: image/png"); $_SESSION["Captcha"]=""; // membuat gambar dengan menentukan ukuran $gbr = imagecreate(200, 50); //warna background kotak captcha biru imagecolorallocate($gbr, 30, 144, 255); // pengaturan font captcha $color = imagecolorallocate($gbr, 253, 252, 252); $font = "blackjack.otf"; $ukuran_font = 20; $posisi = 32; // membuat nomor random acak dan ditampilkan pada gambar for($i=0;$i<=5;$i++) { // jumlah karakter $angka=rand(0, 9); $_SESSION["Captcha"].=$angka; $kemiringan= rand(20, 30); imagettftext($gbr, $ukuran_font, $kemiringan, 8+15*$i, $posisi, $color, $font, $angka); } //untuk membuat atau generate gambar imagepng($gbr); imagedestroy($gbr); ?>
Script PHP di atas akan membuat gambar captcha dengan php dan membuat angka captcha menjadi random atau acak berbikut dengan ukuran dan style nya.
5. Action untuk instruksi cek captcha.
Untuk memastikan apakah captcha yang diinput sudah benar atau belum, maka perlu dilakukan pengecekan atau validasi, tentunya menggunakan file php, karena instruksinya pun pakai session php.
Simpan dengan nama cek-captcha.php
<html> <head> <title>Tutorial Dasar Cara Membuat Captcha Dengan PHP</title> <link rel="stylesheet" type="text/css" href="style.css"> </head> <body> <h2>Cara Mudah Membuat Captcha di PHP - Tutorial</h2> <div class="kotak"> <?php session_start(); if($_SESSION["Captcha"]!=$_POST["nilaiCaptcha"]){ header("location:index.php?pesan=salah"); } else{ echo "<p>Captcha Anda Benar!</p>"; echo "<p><a href='./'>Back</a></p>"; } ?> </div> </body> </html>
Simpan seluruh file coding di atas yaitu index.php, style.php, captcha.php, cek-captcha.php, dan sebuah file font ke dalam folder direktori tutorial cara membuat captcha dengan php yang telah kita buat pada langkah No. 1 tadi. Pastikan seperti gambar berikut;
6. Uji coba captcha.
Setelah semua coding selesai dibuat, selanjutnya adalah uji coba melalui web browser. Pastikan XAMPP telah di start, kemudian akses dengan url /localhost/captcha-php/. Dan pada halaman yang tampil, isi kode captcha pada form input sesuai dengan captcha yang tampil pada gambar.
Jika captcha telah terisi seperti pada gambar di atas, silahakn klik tombol cek captcha. Jika benar maka akan tampil seperti gambar berikut.
Download Tutorial Cara Membuat Captcha Dengan PHP
Sekian penjelasan tentang bagaimana cara membuat captcha dengan php lengkap dengan script coding dan penjelasannya. Untuk mendapatkan source code nya Anda dapat langsung mendownload melalui link di atas, jika link download tidak aktif atau error mohon hubungi kami melalui SMS atau email atau melalui form komentar dan obrolan. Semoga dapat membantu.
Baca juga :
- Script PHP Export To Excel
- Script PHP Hitung Umur Berdasarkan Tanggal Lahir
- Cara Membuat Script Autonumber PHP MySQL
- Script PHP Update Database MySQL | CRUD
- Script Tampil Database dengan PHP MySQL | VIEW Data
- Cara Membuat Laporan PDF dengan PHP dan MySQL
- Membuat Form Input Data dengan PHP dan MySQL
Cara Membuat Captcha Dengan PHP
Tags: membuat captcha dengan php, membuat captcha di php, membuat captcha php, captcha php, cara membuat captcha dengan php