Hoşgeldin Misafir

Php İle Resimli Güvenlik Kodu Uygulaması

CyberHawk

CyberHawk

WebMaster
Adana
12 Ara 2018
16,070 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
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-


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";
}




?>
---işlemlerimiz bu kadar geliştirip kullanmak sizlere kalmış.----

---umarım işinize yarar. ;)----

---buyrun demosu: DEMO----