Melindungi Form Dengan Key / Token ( Solusi Captcha )

4 views

 Sebelumnya aku sudah post Cara Membuat Captcha . Namun mungkin terkadang captcha sangat sulit di baca oleh insan sekalipun. Dengan key / token ini , orang tidak perlu repot – repot menulis captcha. Berikut cara menciptakan key / token :

1. Buat file token.php dengan isi sebagai berikut :

<?php/* Tutorial Melindungi Form Dengan Key / Token ( Solusi Captcha ) - By gregetart.blogspot.com  */$char = array("A","B","C","D","E","F","G","H","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Y",  "Z","a","b","c","d","e","f","g","h","j","k","l","m","n","p","q","r","s","t","u","v","w","x",  "y","z","1","2","3","4","5","6","7","8","9");$keys = array();while(count($keys) <= 10) {$x = mt_rand(0, count($char)-1);if(!in_array($x, $keys)) { $keys[] = $x;  }  }$token = '';foreach($keys as $key => $val){ $token .= $char[$val];  }$_SESSION['token'] = $token;?>

2. Buka form yang ingin anda pasang key / token dan tambahkan dengan beberapa instruksi menyerupai ini :

<?php/* Tutorial Melindungi Form Dengan Key / Token ( Solusi Captcha ) - By gregetart.blogspot.com  */session_start();include('token.php');?><form method="POST" action="action.php"><p>Melindungi Form Dengan Key / Token ( Solusi Captcha ) By <a href="http://gregetart.blogspot.com">Greget Art</a></p><input type="hidden" value="<?php echo $_SESSION['token']; ?>" /><button>Submit</button></form>

3. Buka sasaran form yang ingin anda pasang key / token dan tambahkan dengan beberapa instruksi menyerupai ini : 

<?php/* Tutorial Melindungi Form Dengan Key / Token ( Solusi Captcha ) - By gregetart.blogspot.com  */session_start();if($_SESSION['token'] == $_POST['token']){ // respon token benar echo 'Token benar';}else{ // respon token salah echo 'Token salah , seharusnya'.$_SESSION['token'];}?>

 

Setelah itu anda tinggal mengkreasikannya sendiri menjadi lebih manis ^_^ . Cara ini sudah sering aku gunakan untuk menggantikan captcha yang “ruwet” untuk aku dan visitor.

Sumber : Blog Saya Sendiri

Author: 
    author
    No related post!