Php’de formalarınız için nasıl resimli güvenlik kodu oluşturup kullanabilirsiniz bunu görelim.-
demosuna bakmayı unutmayın
-index.php de formumuzu oluşturalım-
-daha sonra resmimizi oluşturmak için captcha.php dosyamızı oluşturalım--
--ve daha sonrada kontrol.php ile gelen değerlerimizi kontrol edelim ve sonucu ekrana yazalım---
---işlemlerimiz bu kadar geliştirip kullanmak sizlere kalmış.----
---umarım işinize yarar.
----
---buyrun demosu: DEMO----
demosuna bakmayı unutmayın
-index.php de formumuzu oluşturalım-
PHP:
<form action="kontrol.php" method="post">
Resimdeki kodu giriniz :<img src="captcha.php"> <input type="text" name="guvenlik">
<input type="submit" value="Gönder">
</form>
-daha sonra resmimizi oluşturmak için captcha.php dosyamızı oluşturalım--
PHP:
<?php
class captcha {
public function resimuret($eni,$boyu){
session_start();
$md5yap = md5(rand(0, 9999));
$dogrulamakodu = strtoupper(substr($md5yap, 8, 6));
$_SESSION["dogrulamakodu"] = $dogrulamakodu;
$en =$eni ;
$boy = $boyu;
//Uzerinde calisacagimiz resim olusturuluyor.
$image = ImageCreate($en, $boy);
//Beyaz,Siyah ve Kirmizi renkler olusturuyoruz. Rakamlar renkleri ifade etmektedir.
$beyaz = ImageColorAllocate($image, 255, 255, 255);
$siyah = ImageColorAllocate($image, 0, 0, 0);
$kirmizi = ImageColorAllocate($image, 242, 0, 0);
//Arka plani beyaz yapiyoruz
ImageFill($image, 0, 0, $beyaz);
//Olusturulan dogrulama kodunu resime yaziyoruz.
ImageString($image, 6, 9, 5, $_SESSION["dogrulamakodu"], $siyah);
//Gorunumu biraz karistirmak icin cizgilerle gorunumu zorlastiriyoruz.
//Dilerseniz imageline() satirlarini kaldirarak cizgileri yok edebilirsiniz.
imageline($image, 0, 2, $en, 2, $kirmizi);
imageline($image, 0, 25, $boy, 0, $kirmizi);
imageline($image, $en, $boy, 40, 0, $kirmizi);
imageline($image, 0, 23, $en, 23, $kirmizi);
// Tarayiciya dosyamizin tipini yolluyoruz.
header("Content-Type: image/jpeg");
ImageJpeg($image);
ImageDestroy($image);
exit();
}
}
$resim=new captcha();
$resim->resimuret(75,25);
?>
--ve daha sonrada kontrol.php ile gelen değerlerimizi kontrol edelim ve sonucu ekrana yazalım---
PHP:
<?php
session_start();
$formkod=$_POST['guvenlik'];
$kod=$_SESSION['dogrulamakodu'];
if($formkod!=$kod){
echo"Güvenlik kodu hatalı";
}
else{
echo "güvenlik kodu doğru girildi";
}
?>
---umarım işinize yarar.
---buyrun demosu: DEMO----

