Php ile Güvenlik Kodu Oluşturma
Php

Php ile Güvenlik Kodu Oluşturma

Merhaba arkadaşlar. Bu yazımızda sizlere özellikle yorumlarda sıkça kullanılan güvenlik kodu oluşturma olayını anlatacağım. Öncelikle guvenlik.php adında bir sayfamız olacak. Bu sayfada güvenlik kodunu oluşturduğumuz fonksiyonumuz olacaktır. Birde goster.php adında bir sayfa oluşturacağız. Bu sayfada da güvenlik kodumuzu göstereceğiz. Örnek olarak botlar otomatik olarak sitenize gereksiz reklam yorumları atabilirler. Bunu önlemek amacıyla yorum yapacak kişiden güvenlik kodunu girmesi istenir. Botlar her sayfa yenilendiğinde değişen jpeg görselinin üzerindeki güvenlik kodunu doğru giremeyeceklerinden bu tür reklam yorumları canınızı sıkmaz. Şimdi ilk olarak guvenlik.php sayfamızdan başlayalım.

session_start();
//olusturulmus resmi tarayiciya gonderir
olustur();
$_SESSION['pass'] = $pass;
exit();
function olustur()
{
//md5 ile rastgele sayi uretelim
$md5 = md5(rand(0,999));
global $pass;
//degiskenimizin sadece 5 karakterini alıyoruz
$pass = substr($md5, 10, 5);
//oluşturulacak görselin boyutlarını ayarladık
$width = 100;
$height = 38;
//resim kaynagini olusturuyoruz
$image = ImageCreate($width, $height);
//renkleri degiskenlere atıyoruz.
$renk1 = ImageColorAllocate($image, 255, 255, 255);
$renk2 = ImageColorAllocate($image, 0, 0, 0);
$renk3 = ImageColorAllocate($image, 244, 55, 0);
//Zemini siyah yapiyoruz
ImageFill($image, 0, 0, $renk1);
//Rastgele sayiyi resmin uzerine yaziyoruz
ImageString($image, 5, 30, 4, $pass, $renk2);
// yazı büyüklüğü & saga kaydırma & aşağı kaydırma
//resmin üzerine çizgi ekliyoruz
imageline($image, 0, $height/2, $width, $height/2, $renk3);
imageline($image, $width/2, 0, $width/2, $height, $renk3);
//sunucuya görsel türünü belirtiyoruz.
header("Content-Type: image/jpeg");
//Son olarak görselin çıktısını alıyoruz.
ImageJpeg($image);
//Kaynagi temizliyoruz
ImageDestroy($image);
}
Gerekli ipuçlarını satır aralarında belirttim. Güvenlik kodunun doğruluğunun kontrolü için güvenlik kodunu bilmemiz gerekmektedir. Bu nedenle güvenlik kodunu her sayfada okuyabileceğimiz session'umuza aktardık. Makale sonunda kontrolünü nasıl sağlayacağımız konusunda bir örnek vereceğim. Şimdi goster.php sayfamıza geçelim.
<html>
<body>
<img src="guvenlik.php">
</body>
</html>
Böylelikle sayfamızda güvenlik kodu görselimizi göstermiş olduk. Bu kodların karşılaştırılarak kontrol edilmesiyle ilgili örnekte aşağıdaki gibidir.
session_start();
$guvenlikkodu = $_SESSION['pass'];
$gelenkod = $_POST['guvenlikkodu'];
//Kişinin kodu girip postladığını düşünelim ve çekip değişkene aktaralım.
if($gelenkod == $guvenlikkodu) //kodlar birbiriyle aynı mı kontrol ettik.
{
//İki kod birbirini tutuyorsa bu parantezlerin arası işleme alınır. Burada yorum veritabanına kaydedilebilir.
}
Böylelikle bir yazımın daha sonuna gelmiş bulunmaktayım. Sonraki yazılarda görüşmek üzere...


author

Aykut Erdoğan

php, ImageCreate, ImageColorAllocate, ImageFill, ImageString, imageline

  • Bu Yazılara da Gözat:

    0 Yorum

    Cevapla