• 04-01-2023, 00:21:55
    #1
    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ı?
  • 04-01-2023, 00:48:01
    #2
    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();