fatihsyn adlı üyeden alıntı: mesajı görüntüle
Selamlar, SQL'de
$query = $db->query("SELECT * FROM tablo WHERE ip = '{$localip}'", PDO::FETCH_ASSOC);
gibi data çekiyorum ve
$log = $db->prepare("INSERT INTO log SET ip = ?, durum = ?, tarih = ?");
    $insert = $log->execute(array(
        $saveip, "Sisteme kayitli degil", $date
    ));
gibi de veri yazıyorum sisteme, bu kodlardaki Injection açıklarını nasıl kapatabilirim bilgisi olan var mı?
Sorgu Yaparken Şu Şekilde Kullanabilirsin :
// Kullanıcıdan Gelen Bilgiyi Sorgulamak İstiyorsan Bunuda Ekle
$sutun = trim(htmlspecialchars(addslashes(stripslashes(strip_tags($_POST["sutun"])))))

$query = $db->prepare("SELECT * FROM tablo WHERE sutun like :sutun");

//String Veri Sorgulama
$query->bindParam(":sutun", $sutun, PDO::PARAM_STR);

//Integer veri Sorgulama
$query->bindParam(":sutun", $sutun, PDO::PARAM_INT);

$query->execute();

$info = $query->fetch(PDO::FETCH_ASSOC);

//Birden Fazla Tabloları Çekmek için bunu yap
$info = $query->fetchAll(PDO::FETCH_OBJ);
Kayıt Yaparken ise Şöyle Kullanabilirsin:
// Kullanıcıdan Gelen Bilgiyi Kayıt Etmek İstiyorsan Bunuda Ekle
$sutun = trim(htmlspecialchars(addslashes(stripslashes(strip_tags($_POST["sutun"])))))

$create = $db->prepare("INSERT INTO tablo(sutun) VALUES (:sutun)");

//String Veri Kayıt
$create->bindParam(":sutun", $sutun, PDO::PARAM_STR);

//Integer veri Kayıt
$create>bindParam(":sutun", $sutun, PDO::PARAM_INT);

$create->execute();