4 Mart 2014 Salı

PHP - Securimage captcha (doğrulama kodu) kullanımı

1 comment
Bu yazıda Securimage adlı CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart) uygulamasından bahsedeceğim.

Web sitelerine üye olurken karşımıza bir resim çıkar ve bu resimdeki yazıları ya da sayıları ilgili alana doğru bir biçimde yazmamız istenir. Böylece botların ya da güvenliği tehdit edebilecek unsurların önüne geçilmesi amaçlanır. İşte karşımıza gelen bu resimlere CAPTCHA adı verilir.

Securimage uygulamasını indirmek için http://www.phpcaptcha.org/download/ adresine gidiyoruz ve son versiyonu zip halinde indiriyoruz.

İndirdiğimiz zip dosyasının içindeki securimage klasörünü projemizin ana dizinine atıyoruz.

Şimdi ana dizinde bir php dosyası oluşturalım. (form.php adında bir dosya oluşturdum.) İçine aşağıdaki kodları yazalım.

<form method="post" action="kontrol.php">
<img id="captcha" src="securimage/securimage_show.php" alt="CAPTCHA Image" />

<input type="text" name="captcha_code" size="10" maxlength="6" />
<a href="#" onclick="document.getElementById('captcha').src = 'securimage/securimage_show.php?' + Math.random(); return false">[ Resim Değiştir ]</a>

</div>

<input type="submit" name="Kod Test" />
</form>


Bu kod ile yani form.php sayfası ile doğrulama kodunun doğru olup olmadığını kontrol etmek için kontrol.php dosyasına gönderdik. Şimdi kontrol.php sayfasını oluşturalım. Onun içine de aşağıdaki kodları yazalım.

<?php
include_once 'securimage/securimage.php';
 
$securimage = new Securimage();

if ($securimage->check($_POST['captcha_code']) == false) {

  echo "Hatalı doğrulama kodu.<br /><br />";

  echo "Lütfen <a href='javascript:history.go(-1)'>geri</a> gidin ve tekrar deneyin.";

  exit;

}
?>

Bu kodda ise doğrulama kodu yanlış ise doğrulama kodunun yanlış olduğu uyarısı veriyoruz.

Böylece captcha uygulamasını sayfamıza eklemiş olduk.


If You Enjoyed This, Take 5 Seconds To Share It