Merhaba,
Bence uygulama içine kullanılacak değişkenleri kullanmadan önce bir
filtreden geçirmek gerekli gibi görülmese bile bazen hayat kurtarabilir.
mysql_real_escape_string kulanmanın yanında ben bir de preg_replace ile
gelen değerleri temizlemenizi öneririm.

http://www.bt-tr.net/2009/01/php-ile-degisken-temizileme/ adresinde değişken
temizleme ile ilgili ufak bir iki örnek var.

İyi akşamlar.


2009/1/12 Elvin Şiriyev <[email protected]>

> Şimdiye kadara sadece addslashes kullandım. zaten sqli bozacak olan sadece
> tek tırnak olayı (String değerlerde) olduğu için bu yeterli oluyor
> zannedersem. Sayısal değerlerde $id = (int) $_GET['id']; veya $toplam =
> (float) $_GET['toplam']; gibi filtreyi kullanmanız gerek. daha kolay ve
> güvenli işlemler için
> MySQLi : http://www.php.net/manual/en/book.mysqli.php
>
> PS: bir çok veri tabanı yönetim nesneleri (classes) bu güvenliği sizin çin
> daha etkin yapabilir.
>
> 2009/1/11 Nuri AKMAN <[email protected]>
>
>> Arkadaşlar,
>>
>> $_POST veya $_GET ile aldığım bir parametreyi SQL'de kullanmam ve ekrana
>> yazdırmam gerekiyor.
>> Aşağıdaki kadar işlem hack yememek için sizce yeterli olur mu?
>>
>>
>> $_GET['bolumadi'] = *striptags*($_GET['bolumadi']);
>> echo $_GET['bolumadi'];
>> $SQL = sprintf("select * from xxx where yyy = '%s' order by 1", *
>> mysql_real_escape_string*( $_GET['bolumadi'] ));
>>
>> Selamlar,
>> Nuri AKMAN
>>
>> _______________________________________________
>> Linux-programlama mailing list
>> [email protected]
>> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>>
>>
>
>
> --
> Elvin Şiriyev
> http://siriyev.net
>
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> http://liste.linux.org.tr/mailman/listinfo/linux-programlama
>
>


-- 
v e l i   a k ç a k a y a
-------------------------
(http://www.bt-tr.net)
_______________________________________________
Linux-programlama mailing list
[email protected]
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Cevap