Membuat Captcha Dengan PHP

Membuat Captcha Dengan PHP

Membuat Captcha Dengan PHP
Membuat Captcha Dengan PHP

Membuat Captcha Dengan PHP atau cara membuat captcha google  , simpel captcha code ini sendiri pastinya sobat sudah sering lihat , seperti memasukan angka atau character secara random , yang berbeda beda tentunya namanya juga random hahaa. Dan seperti biasa apa sobat sudah tau Captcha?


Apa itu Captcha? 

Captcha itu sendiri adalah suatu bentuk uji seperti tantangan atau tanggapan yang digunakan dalam suatu perkomputeran untuk memastikan bahwa dari suatu jawaban tidak dihasilkan oleh suatu komputer melainkan dari pengguna nya. dan untuk Kegunaan Captcha itu sendiri sering kali digunakanterutamanya untuk mengelakkan perisian automatik seperti (bot) dari melakukan tindakan sama seperti manusia melakukan sign up atau login dan sebagainya. jadi menghindari seperti kecurangan , dan tentunya sobat sudah sering lihat dong, dan oke kita lanjut aja ketahap pembuatan nya.

Membuat Captcha Dengan PHP :

Nah sobat silahkan buat folder baru di local sobat (maksudnya di htdocs) , dengan nama captcha, dan beri nama file baru di folder captcha , dengan nama file tersebut yaitu index.php dan sobat ketikkan kode dibawah ini :



<!DOCTYPE html>
<html>
<head>
<title>MEMBUAT CAPTHA SEDERHANA</title>
<script type="text/javascript">
 window.onload = function() {
  document.getElementById('send_data').addEventListener('click', function() {
   var http,
   response,
   captcha;

   captcha = document.getElementById('captcha');
   if (window.XMLHttpRequest) {
    http = new XMLHttpRequest();
   } else {
    http = new ActiveXObject('Microsoft.XMLHTTP');
   }

   http.onreadystatechange = function() {
    if (http.readyState == 4 && http.status == 200) {

     // set response menjadi JSON
     response = JSON.parse(http.responseText);

     // munculkan pesan
     alert(response.message);

     // kosongkan textbox
     captcha.value = '';
    }
   }

   http.open('POST', 'cek.php', false);
   http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
   http.send('captcha='+ captcha.value);
  });
 }

</script>
</head>
<body>
<img src="captcha.php"><br />
<input type="text" id="captcha" /><br />
<button id="send_data">CEK CAPTCHA</button>
</body>
</html>

Maka hasilnya akan seperti gambar dibawah ini setelah sobat mengetikkan kode diatas kedalam file index.php :


Kemudian sobat membuat script baru yang fungsi dimana script yang baru ini akan memproses captcha tersebut yang dikirim melalui textbox yang ada di form input. Silahkan sobat ketikkan kode dibawah ini , dan sobat simpan file didalam folder captcha, kemudian sobat beri dengan nama cek.php :



<?php
 session_start();

 $captcha = $_POST['captcha'];

 // jika captcha tidak kosong
 if (!empty($captcha)) {

  // jika captcha sesuai dengan image
  if ($captcha == $_SESSION['captcha']) {
   $response = array(
    'error'=>false,
    'message'=>'Captcha valid'
   );

  // jika captcha tidak sesuai dengan image
  } else {
   $response = array(
    'error'=>false,
    'message'=>'Captcha invalid'
   );
  }

 // jika captcha kosong
 } else {
  $response = array(
   'error'=>false,
   'message'=>'Please enter captcha'
  );
 }

 // buat response berupa JSON
 echo json_encode($response);


Dan untuk langkah terakhirnya adalah membuat captcha nya itu sendiri, silahkan sobat ketikan kode dibawah ini , dan simpan lagi di folder captcha kemudian sobat beri nama file tersebut dengan nama captcha.php :



<?php
 session_start();
 header('Content-type: image/png');

 // mengacak huruf dan angka
 $chart = str_shuffle('0123456789abcdefghijklmnopqrstuvwxyz');

 // ambil 5 karankter dari chart yang di acak
 $captcha = substr($chart, 0, 5);

 // simpan captcha di dalam session
 $_SESSION['captcha'] = $captcha;

 // membuat gambar
 // imagecreate(P, L)
 // P : panjang, L : tinggi
 $image = imagecreate(65, 30);

 // membuat background dan text
 // imagecolorallocate(image, red, green, blue);
 $background = imagecolorallocate($image, 2, 89, 47);
 $text = imagecolorallocate($image, 255, 255, 255);

 imagefilledrectangle($image, 0, 0, 65, 30, $background);
 imagestring($image, 20, 10, 7, $captcha, $text);
 imagejpeg($image);
 imagedestroy($image);

Kemudian sobat bisa lihat hasilnya , seperti gambar dibawah ini contohnya dibawah ini , nah apabila sobat salah memasukkan kode captcha nya, sobat akan menerima alert atau pesan Captcha Invalid , dan jika sobat benar memasukkan captcha nya , sobat akan mendapatkan pesan Captcha Valid :


Pesan Jika Captcha dimasukkan Salah

Pesan Jika Captcha yang dimasukkan Benar

Penutup

Nah jadi sobat , mungkin itu saja tutorial Cara Membuat Captcha Sederhana Dengan PHP , apabila bermanfaat silahkan sobat share , dan sampai jumpa di tutorial selanjutnya ya. dan Terimakasih Sudah berkunjung di blog ini sobat.

Anda mungkin menyukai postingan ini