Pek çok yazılımcının benım de bazen gozumden kaçtıgı veya unuttugum yerlerde kodlama yaparken sql açıgı bırakırız bu açık gerçekden onemli bir açık veritabanın bazı programlar veya manuel ele geçirelebilir bir açık.


SQL açıgı nedir sorusuna ustte verdim gerçi cevabı ne gibi zararları olur derseniz admin şifresini vs kıramasada uyelerinizin bilgilerini çalmada işe yarar vs. iş gorur bunlara onlem olarak açtım bu konuyu altta vercem kodları scripttinizde duzenleme yaparak düzeltebilirsiniz.Bu açıklar gnelde id li url lerde verir misal www.ahmetozalp.net/konuoku.php?id=5 tabi ornekdir url burda id yi programa veya sonuna ' koyarak sql açıgı olup olmadıgını anlarız buna onem olarak şole işlem yapabiliriz.


Örnek kodlama SQL açıgı olan kodlama:


<?
$id = $_GET['id']; //Önceki sayfadan gelen id değeri 15 olsun...
$kayit = mysql_query("SELECT * FROM makale WHERE id=$id");
?>*

Bu reklam sadece misafirlere görünüyor. Oturum açar veya üye olursan, bu reklamdan kurtulursun.

Burda sql açıgı vardır biz bunu nasıl kapatırız?


<?
$id = mysql_real_escape_string($id);
?>*
Burda biz gelen id leri rakamsal olarak ifade ettim.


<?
$id = $_GET['id']; //Önceki sayfadan gelen id değeri 15 olsun...
$id = mysql_real_escape_string($id);
$kayit = mysql_query("SELECT * FROM makale WHERE id=$id");
?>*