• 26-09-2012, 13:45:23
    #10
    Kimlik doğrulama veya yönetimden onay bekliyor.
    header.php içine

    <?
    function guvenlik($q) {  
        $q = htmlspecialchars(stripslashes($q)); 
        $q = str_replace("script", "blocked", $q); 
        $q = str_replace("select", "", $q); 
        $q = str_replace("SELECT", "", $q); 
        $q = str_replace("UPDATE", "", $q); 
        $q = str_replace("update", "", $q); 
        $q = str_replace("delete", "", $q); 
        $q = str_replace("DELETE", "", $q); 
        $q = str_replace("UNION", "", $q); 
        $q = str_replace("union", "", $q); 
        $q = str_replace('"', "", $q); 
        $q = str_replace("%", "", $q); 
        $q = mysql_escape_string($q); 
        $q = str_replace("`","",$q); 
        $q = str_replace("'","'",$q); 
        $q = str_replace("-","-",$q); 
        $q = str_replace("&","",$q); 
        $q = str_replace("%","",$q); 
        $q = str_replace("<","",$q); 
        $q = str_replace(">","",$q); 
        $q = trim($q); 
        return $q;  
    }
    ?>
    şeklinde kodları yerleştirdim.

    sonra include ile çağırdığım sayfaya

    $Ad_Soyad = guvenlik($_POST["Ad_Soyad"]);
    şeklinde gereken yere koydum.

    ama

    Fatal error: Cannot redeclare guvenlik() (previously declared in /home/www/fotografdeposu.com/header.php:34) in /home/www/fotografdeposu.com/header.php on line 57

    hatası aldım
  • 26-09-2012, 13:48:56
    #11
    "Daha önce tanımlanmış bir fonksiyon, tekrar tanımlayamazsın" diyor. Sanırım guvenlik() fonksiyonu başka yerlere de eklenmiş.
  • 26-09-2012, 13:55:39
    #12
    Üyeliği durduruldu
    ewt 1 den fazla guvenlik fonksiyonu var
  • 26-09-2012, 13:56:13
    #13
    bütün klasörü tarattım içinde guvenlik gecen sadece 2 dosya var. biri header.php diğeri de $Ad_Soyad = guvenlik($_POST["Ad_Soyad"]); yi ekldiğim dosya

    başka bir yerde tanımlanmış olma ihtimali yok. fonksiyon içinde bir problem olabilir mi?

    EDİT: sorunu çözdüm 2 kere header.php include olmuş birini kaldırın sorun kalktı
  • 26-09-2012, 14:07:11
    #14
    Bu tarz durumları engellemek için _once uzantılı include fonksiyonunu kullanabilirsiniz.

    include_once ve require_once bunun için vardır.. İkinci defa eklettirmez size aynı dosyayı..
  • 26-09-2012, 14:29:18
    #15
    oraya gelecem az kaldı. şu siteyi bitirmek istiyorum ilkin ama yaparken bir çok eksik gördüm. birçok şey de öğrendim. ilk amaç su an bitirmek akabinde aldığım notlar var. sitenin mimarisini neredeyse kökünden değiştirecem ama şu an bunu bitirmeye odaklandım
  • 26-09-2012, 21:34:27
    #16
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Arkadaşım güvenlik başka şey kod temizlemek başka şey. Misal sen gelen datadan öyle javascript, select, &, <, > vs. temizlersen yarın öbür gün o sistemi kullanan kişi ne panelden reklam kodu ekleyebilir ne yazı, link vs. ekleyebilir doğru olarak.

    Madem yeni başlıyorsun, htmlspecialchars ve mysql_real_escape_string kullanımını iyi araştır. Ayrıca int olması gereken alanlar için intval vb. kontroller yapabilirsin.
  • 26-09-2012, 21:43:51
    #17
    Üyeliği durduruldu
    acayip adlı üyeden alıntı: mesajı görüntüle
    Arkadaşım güvenlik başka şey kod temizlemek başka şey. Misal sen gelen datadan öyle javascript, select, &, <, > vs. temizlersen yarın öbür gün o sistemi kullanan kişi ne panelden reklam kodu ekleyebilir ne yazı, link vs. ekleyebilir doğru olarak.

    Madem yeni başlıyorsun, htmlspecialchars ve mysql_real_escape_string kullanımını iyi araştır. Ayrıca int olması gereken alanlar için intval vb. kontroller yapabilirsin.
    kesinlikle katılıyorum zaten mysql_real_escape_string mysql için zararlı kodları geçersiz kılıyor, htmlspecialchars da <> gibi karakterleri unicode ediyor onun için kulağımızı farklı şekillerde tutmaya gerek yok
  • 26-09-2012, 22:14:33
    #18
    bu başlıkta verilmiş guvenlik fonksiyonunu kullanıyorum formlarda
    ayrıca $id=(int)$_GET["id"]; gibi get ile gelen verileri sadece int olarak alıyorum. şimdilik elimden gelen ve öğrenebildiklerim bunlar bunun dışında sunucum sürekli backup alıyor bende veritabanımı yedekliyorum sürekli. biraz kodla biraz tedbirle birazda allaha emanet koruyoruz bakalım