IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 20 Ağustos 2007, 13:15   #1
Nickolas
Guest
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Yüzdesi:(%)
PHP - Resim Doğrulama ya da Güvenlik Kodu [MySQL, PHP, AJAX]




Son günlerde DDos ataklarının artması üzerine Güvenlik kodu ya da Resim doğrulama sistemi (MySQL Tipi) Veri Tabanı kullanan her sitenin ihtiyacı haline geldi.

Sizlere vBulletinin kullanmış olduğu Image Kütüphanesini tekrar düzenleyerek kullanılabilir bir sistem çıkardım.

Öncelikle Download linkini vereyim ve nasıl kullanacağınızın açıklamasını yapayım.

Link: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Çalışır Halin Videosu: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Yükleme:
Öncelikle imageverify.rar dosyasının içeriğindeki tüm dosyaları scriptinizin içeriğine atın.

PHP Scriptinizin Veri tabanında Şu SQL Kodunu çalıştırın:
Kod:   Kodu kopyalamak için üzerine çift tıklayın!
CREATE TABLE `imageverify` ( `imageverifyid` int(10) unsigned NOT NULL auto_increment, `imagehash` varchar(32) NOT NULL default '', `verifyvalue` varchar(12) NOT NULL default '', `time` int(10) unsigned NOT NULL default '0', PRIMARY KEY (`imageverifyid`) )

Son olarak: includes/config.php içerisinde ki

// Veri Tabanınızın Sunucu Adını
$config['DB']['server'] = 'localhost';

// Veri Tabanınızın Veri Tabanı Portu
$config['DB']['port'] = 3306;

// Veri Tabanı Kullanıcı Adı
$config['DB']['username'] = 'root';

// Veri Tabanı Şifresi
$config['DB']['password'] = '';

// Veri Tabanı Adı
$config['DB']['dbname'] = '';
$config['DB']['useptconnect'] = false;

// Veri Tabanınızın MySQL Versiyonu 4.1 veya Fazla ise Bunu kullanın
$config['DB']['charset'] = '';

$config['Misc']['fullpath'] = '';

// Resim Oluştururken Rasgele Yazı Tipi Kullanılması
$config['image']['randomfont'] = true;

// Resim Oluştururken Rasgele Yazı Büyüklüğü Kullanılması
$config['image']['randomsize'] = false;

// Resim Oluştururken Karekterleri Yatırma
$config['image']['randomslant'] = false;

// Rasgele Renk
$config['image']['randomcolor'] = true;

// Rasgele Biçim
$config['image']['randomshape'] = false;

Kısımınlarını Kendinize göre ayarlayın.

Kullanım:

Kullandığınız php scriptinin En başında Şu kod çalışmalı:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?php require('./global.php'); $imagehash = create_newimagehash(); ?>

Burada $imagehash ile yeni bir Resim Doğrulama Kodunun Anahtarını oluşturuyoruz. AJAX ile Resim Yenilime için: scriptinizin <head></head> tagları arasına

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<script type="text/javascript" src="js/global.js"></script> <script type="text/javascript" src="js/class_ajax.js"></script>

Kodlarını ekliyoruz.

Daha sonraki adımda:

Form 'unuza:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<input type="hidden" name="imagehash" id="imageverify_hash" value="<?php echo $imagehash; ?>" />

Kodunu ve Formuzun dizaynına göre

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<img src="image.php?imagehash=<?php echo $imagehash; ?>" id="imageverify_image" /><br /> <a href="#" id="image_refresh">Resmi Yenile</a> &nbsp; <img src="images/imagerefresh.gif" id="imageverify_indicator" style="display: none;" />

Kodlarını ekleyin.

Güvenlik Kodununun girilebileceği "input" 'u girin. Örnek:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
Resim Doğrulama Değeri: <input type="text" name="imageverify" maxlength="6" />

ve Son olarak: </body> Tagının Hemen üstüne

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<script type="text/javascript" src="js/imageverify.js"></script> <script type="text/javascript"> <!-- Image_Verify_Init(); //--> </script>

Kodlarını ekleyin. Zor gibi görünebilir Fakat En altta ki Örnek Kodu incelediğinizde çok da zor olmadığını göreceksiniz.

Peki Girilen Kodun Doğruluğunu nasıl ölçeriz... Örnek Kod:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?php require('./global.php'); if ($_POST['imagehash'] AND $_POST['imageverify']) { if (verify_imagehash($_POST['imagehash'], $_POST['imageverify'])) { echo $_POST['imageverify'] . " -> Doğru!"; exit; } else { echo $_POST['imageverify'] . " -> Yanlış!"; exit; } } else { echo "Lütfen Resim Doğrulama Alanını Doldurun!"; exit; } ?>

Örnek Kod:

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<?php require('./global.php'); $imagehash = create_newimagehash(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]"> <html dir="ltr" lang="tr"> <head> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="-1" /> <meta http-equiv="Cache-Control" content="no-cache" /> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-9" /> <title>Image Verify</title> <script type="text/javascript" src="js/global.js"></script> <script type="text/javascript" src="js/class_ajax.js"></script> </head> <body> <form method="post" action="test.php"> <input type="hidden" name="imagehash" id="imageverify_hash" value="<?php echo $imagehash; ?>" /> <table cellpadding="6" cellspacing="0" width="430" align="center" border="0"> <tr> <td align="center" colspan="2"> <img src="image.php?imagehash=<?php echo $imagehash; ?>" id="imageverify_image" /><br /> <a href="#" id="image_refresh">Resmi Yenile</a> &nbsp; <img src="images/imagerefresh.gif" id="imageverify_indicator" style="display: none;" /> </td> </tr> <tr> <td class="alt" colspan="2"> Resim Doğrulama Değeri: <input type="text" name="imageverify" maxlength="6" /> </td> </tr> <tr> <td class="tfoot" colspan="2" align="center"> <input type="submit" value="Giriş Yap" class="button" /> </td> </tr> </table> </form> </div> <script type="text/javascript" src="js/imageverify.js"></script> <script type="text/javascript"> <!-- Image_Verify_Init(); //--> </script> </body> </html>


 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Cevapla

Etiketler
ajax, da, dogrulama, guvenlik, kodu, mysql, resim, ya


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
PHP’de Resim Doğrulama - Güvenlik Kodu MorfiN PHP 0 27 Nisan 2012 20:29
PHP ile Güvenlik Kodu Oluşturmak toXic PHP 0 03 Nisan 2012 19:38
Güvenlik kodu oluşturma Asp Maniack ASP/ASP.NET 0 19 Haziran 2006 16:32