PHP Güvenlik Kodu Oluşturma (captcha)
Geri Dön

PHP Güvenlik Kodu Oluşturma (captcha)

Anasayfa
PHP nin gd kütüphanesini kullanarak nasıl güvenlik kodu yapacağımızı anlatacağım.Öncelikle kütühpanin aktif olup olmadığını kontrol edelim.

Wampserverda altaki icona sol tıklayıp php/php extensions girip php_gd2 nin yanında tik işareti varmı diye bakın.Yoksa ona tıklayıp aktif edip wampı restartlayın.

İndir : http://ustaderslik.com/dosya/guvenlik-kodu.rar

Şimdi kodlara geçelim.guvenlik-kodu.php diye bir dosya açıp aşağıdakileri yazın.

<?php
$sifre=substr(md5(rand()),0,5);//rasgele bir metin oluşturuyoruz.

$r=rand(0,255);
$g=rand(0,255);
$b=rand(0,255);//her sefer için farklı renk olması için rand ile değerler belirtiyoruz.

$resim = @imagecreatefrompng("arkaplan.png");//arkaplan için resim atıyoruz.
$renk=imagecolorallocate ($resim, $r, $g, $b);//font rengini belirliyoruz.
$font="segoepr.ttf";//fontumuzu seçiyoruz.
$font_boyutu=15;//font büyüklüğü
$x=10;
$y=30;//metnin pozisyonu
$egim=10;//fontun eğimi

imagettftext($resim, $font_boyutu, $egim, $x, $y, $renk, $font, $sifre);//yukardaki tüm değerleri birleştiriyoruz.

header ('Content-type: image/png');//bu dosyanın resim dosyası olduğunu belirtiyoruz.

imagepng($resim, NULL, 0);//resmi yazdırıyoruz.
imagedestroy($resim);//resmi hafızandan siliyoruz.sunucu yorulmasın diye.

?>


Yukarıda neyin ne işe yaradığını anlattım.Artık tek yapmamız gereken bir img tagı açıp src üne guvenlik-kodu.php yazmamız.
index.php oluşturalım.

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>UstaDerslik.com</title>
</head>
<body>
<img src="guvenlik-kodu.php" />
</body>
</html>


Görüntüsü :
http://ustaderslik.com/resim/ders/uhz22.png

Sayfayı yeniledikçe captcha yani güvelik kodunun değiştiğini göreceksiniz.Gd2 kütüpanesi ile bu şekilde sürekli değişen resimler yapabiliyoruz.

Rasgele oluşturduğumuz şifreyi sessionlarda tutarak istediğimiz yerde kontrol ettirebiliriz.



Anasayfa

Tüm Hakları Saklıdır. ©Arleone 2013-UstaDerslik