Bu konuya tüm diğer cevaplar genellikle SQL enjeksiyon mücadelede iki ana yollar önermek; fişliyor ve beyaz liste.
Büyük olasılıkla bildiğiniz gibi, kara listeye yasaklanması gerektiğini karakterler listesini yaşıyor ve beyaz liste izin verilmelidir karakterlerin listesini yaşıyor. Beyaz liste çok daha az sıklıkla değiştirmek olacağını ise hiç değilse bir, bir kara liste güncelleyerek tutmak zorunda kalabilirsiniz, çünkü beyaz liste genellikle daha güvenlidir.
Zaten bu konuya verilen beyaz liste, bir basit örnek, değişken bir tamsayı olmalıdır varsayarak, tamsayılar değişkenleri atıyor. Tehlikeli ve tehlikeli değil, dizeleri yakalanmış olacaktır.
Ne tavsiye beyaz liste ile verileri denetler, belki de düzenli ifadeler de dahil olmak üzere, kendi kod yazıyor. Rağmen, bir karakter, çok çeşitli bir dizi ile dolu olabilir girdi bir kara liste biraz daha kolaylaştırmak olabilir.
Özetle, whitelist zaman yapabilirsiniz, ve beyaz liste çok karmaşık olacağını kara. mysql_real_escape_string ()
gibi fonksiyonlar, ve diğer yanıtlar bahsedildi diğer şeyler, özellikleri ile size yardımcı olabilir.