$catid = $_GET["id"];
$topics = $db->get_results("SELECT * FROM topics WHERE catid=".$catid." ORDER BY updatedate ASC");
if($topics){
foreach ($topics as $topic) {
echo $topic->title;
}
}mesela topic.php?id='3 dediğim zaman direk sql sorgumu hata şeklinde ekrana basıyor. Ciddi birşekilde açıkvar çünkü hiçbir filtreleme yapmıyorum. Burada nasıl bir filtreleme yaparsam sorgum güvenli olur?
ezsql pdo güvenlik önlemleri
8
●2.584
- 20-09-2013, 15:30:34İnternette yaptığım araştırmalarda hep bilgi kirliliğine ulaştım daha doğrusu her yeni makalede kafamın daha fazla karıştığını hissettim o yüzden buradan düzgün bir cevap almayı umuyorum. ez_sql_pdo sınıfını kullanıyorum ve sorgularım şu şekilde.
- 20-09-2013, 15:57:06Üyeliği durduruldusorun ez_sql de değil. googleda php sql injection de arama yaparsan sorununa çözüm bulabilirsin.
- 20-09-2013, 16:05:14her veri filtrelemeden işlemeden SQL'e verilirse bugün olmasa da yarın sıkıntı çıkar. gelen id değerini süz, temizle sonra ver bence. istersen preg_replace() ile temizle istersen intval() ile sayısal değerini al istersen bunun için kendine bir fonksiyon yaz orası sana kalmış ama ham veriyi doğrudan SQLe verme.
- 20-09-2013, 16:13:01escape bunun için yeterli oluyor mu?Rigobert adlı üyeden alıntı: mesajı görüntüle
- 20-09-2013, 16:17:50Hani bize kalmış derken tam olarak neyi kastediyorsunuz? Bu yeterli değil daha fazlasını yapmanız lazım tarzı birşey mi söz konusu?Rigobert adlı üyeden alıntı: mesajı görüntüle