On Sat, 2013-01-12 at 17:21 +0200, Nuri AKMAN wrote:
> Arkadaşlar,
> 
> http://stackoverflow.com/questions/60174/how-to-prevent-sql-injection-in-php
> 
> 
> 
> Bu sayfada PHP'de SQL injection önlenmesi hususu tartışılıyor.
> 
> 
> 
> Herhangi bir framework kullanılmayan bir uygulama geliştirme ortamında
> siz nasıl bir fonksiyon önerirsiniz/kullanıyorsunuz?
> 
> 
> 
> Selamlar,
> Nuri Akman

Temel olarak 1-2 yontemi var. Ya prepare statements kullanirsiniz, ya
veritabanlarinin escape fonksiyonlarini veya tamsayi bir deger ise
tamsayiya cast edersiniz.
Bunun disinda beklenen veri belli ise if else kontrolleri de olur. 

Misal 

/?a=true
if ($_GET['a'] == 'true')
....where field is true

/?a=321
$l_a = (int)$_GET['a'] //tamsayi disinda bir veri oldugunda 0 (sifir)
cast edilir.
...where field=$l_a

/?a=hebele
$l_a = pg_escape_string($_GET['a']) veya pg_escape_bytea 
...where field='$l_a'

ya da php kullaniyorsaniz pdo ile ya da java ile prepare statements
kullanarak.

-- 
M.Atıf CEYLAN
Yurdum Yazılım
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap