• 17-07-2008, 09:45:36
    #10
    Kimlik doğrulama veya yönetimden onay bekliyor.
    yazılan her iki yöntemlede istenirse boş bir arama yaptırılabilir. İlgili javascript kodları input kutusuna bir karakter girilmesini zorluyor ancak kutucuğa boşluk karekteri veya eşdeğeri ascii girildiğinde işlevsiz kalıyor.

    Yani ,

    <script>
    function checksrcform() {
    if (document.src.u.value == "" ) {
    alert("aranacak kelimeleri yazınız");
    return false;
    } else 
    return true;
    }
    </script>
    şeklinde bir javascript kontrolu formda "falanca alanı boş bırakmayın" uyarıcısı olarak kullanabilirsiniz ama bu tek başına "boş aramayı engellemez".

    yine , post edilen verinin olduğu gibi kullanılarak boşmu değilmi kontrolu hatalıdır , $_POST['formdangelendeger']; boş olsa bile , yorumcuya veri taşıyormuş gibi gösterilebilir , bunu engellemek içinde veriyi işleme sokmadan önce çeşitli kriterlere göre yeniden düzenlemek gereklidir.
  • 17-07-2008, 11:23:30
    #11
    yazdıklarnızı dikkatte alacağım saolun.
  • 17-07-2008, 11:36:52
    #12
    Üyeliği durduruldu
    Selam jagum, JAvascript Konusunda bişi diyemem insalar istese kendileride sayfayı PC'lerine kaydedip içindeki JS'yi siler yine gönderir O yüzden Onunla Kontrol Olmaz (Çaydırıcılık Olur)

    ama..
    Alıntı
    yazılan her iki yöntemlede istenirse boş bir arama yaptırılabilir.
    post edilen verinin olduğu gibi kullanılarak boşmu değilmi kontrolu hatalıdır , $_POST['formdangelendeger']; boş olsa bile , yorumcuya veri taşıyormuş gibi gösterilebilir
    Bu bilgiyi doğrulayabilir misin? çok kısa bi örnek vereyim benim kodlarım bunlar
    if(empty($_POST['arama'])){
    echo "Ne Arayacan Hemşerim? Yazasana...";
    } else {
    Arama kodları buraya...
    }

    bu kodlarla nasıl veriyi boş gonderip veri varmış gibi else yi yakalacaksın?
    Anlatırmısın?

    NOT : Aksi seda olarak algılama bunu sadece senden bu ileri sürdüğün tezini doğrulamanı istiyorum nede olsa insanlar merak ediyorlar...
  • 17-07-2008, 13:42:34
    #13
    @Dogu_Bey

    $_POST['arama'] değer taşıyıcısını www.kendiadresim.com/benimformum.php sayfasından value="&nbsp;" olarak işlem yapan sayfaya gönderdiğim takdirde $_POST['arama'] değeri null olmaktan çıkıyor.

    buna ne gibi önlem alınabilinir dersen zaten onu yazmışım bir önceki mesajımda "veriyi işleme sokmadan önce çeşitli kriterlere göre yeniden düzenlemek gereklidir" diye.

    kolay gelsin.
  • 17-07-2008, 14:47:05
    #14
    Eposta Aktivasyonu Gerekmekte
    jagum adlı üyeden alıntı: mesajı görüntüle
    @Dogu_Bey
    $_POST['arama'] değer taşıyıcısını www.kendiadresim.com/benimformum.php sayfasından value="&nbsp;" olarak işlem yapan sayfaya gönderdiğim takdirde $_POST['arama'] değeri null olmaktan çıkıyor.
    buna ne gibi önlem alınabilinir dersen zaten onu yazmışım bir önceki mesajımda "veriyi işleme sokmadan önce çeşitli kriterlere göre yeniden düzenlemek gereklidir" diye.
    kolay gelsin.
    gelen veriyi temizlemekten bahsediyorsun sanırım, ancak konu bu değildi. Boş form bilgisi gönderilmesini engellemekti. JavaScript, basit ancak kullanışlı bir yöntem. Ziyaretçilerin tamamı bilmeyebilir veya bilenlerin çoğunluğuda JS engelini aşmak için uğraş vermeyebilir. Trafikten kazancın olur en azından.
  • 17-07-2008, 14:54:49
    #15
    Üyeliği durduruldu
    İyide ortaya attığın tez ile bi alakası yokki bunun post değerine veri girişi yapıyorsun ve elseyi yakalıyor zaten... (Yani Veri Boş Gelmiyor Zaten)

    Ayrıca, Veritabanında yapılan sorgulama "&nbsp;" bu gibi bir sorguyu NULL Olarak algılamaz Aklında olsun...

    Çunku SQL Derleyici Yapısı Browser Gibi Değildir.
    Yani senin bu "&nbsp;" Karakterini Tarayıcılar (WEB Browserlar) NULL yani (Boşluk) olarak algılarken (my)SQL Veri olarak algılar..

    Sonuç Olarak Girdiğiniz Her Karakter Veritabanı işlemlerinde Olduğu Gibi Sorgulanır. (escape Hariç = TRUE \"\' )
    SELECT * FROM `veriler` WHERE mesajlar like "%&nbsp%"; (buyrun deneyin.)

    Tekrar edeyim. Veriyi Boş Gonderemezsiniz! (Hala yok ben gönderirim diyorsanız php.net'e Bug bildirelim Hep beraber..)

    Kolay Gelsin.
  • 17-07-2008, 15:10:16
    #16
    input kutucuğu aracılığı ile spacebar vuruşu yada &nbsp; girdisini boş veri olarak adlandırmıyorsan diyecek bir şey yok , kaldı ki yazarken demişimki "value="&nbsp;" olarak işlem yapan sayfaya gönderdiğim takdirde $_POST['arama'] değeri null olmaktan çıkıyor."

    daha dikkatli okumakta fayda var sanırım , dipnot tarayıcıların boşluk olarak aldıladıkları veri "%20" dir.

    ve "Sonuç Olarak Girdiğiniz Her Karakter Veritabanı işlemlerinde Olduğu Gibi Sorgulanır." demek hatalı bir tespittir , sql injection nedir arada hatırlamakta fayda vardır.

    her karakter , coder ne şekilde betiği hazırlamışsa ilgili dönüşümden sonra dönüştürülmüş hali ile sorgulanır.
  • 17-07-2008, 15:12:17
    #17
    Üyeliği durduruldu
    Alıntı
    "Sonuç Olarak Girdiğiniz Her Karakter Veritabanı işlemlerinde Olduğu Gibi Sorgulanır." demek hatalı bir tespittir
    Alıntı
    Sonuç Olarak Girdiğiniz Her Karakter Veritabanı işlemlerinde Olduğu Gibi Sorgulanır. (escape Hariç = TRUE \"\' )
    Devamını okuma gibi bir alışkanlığınız yok galiba..

    Neyse Ben çekildim aradan gerekli açıklamayı yaptım.

    ayrıca
    Alıntı
    kaldı ki yazarken demişimki "value="kaldı ki yazarken demişimki "value="&nbsp;" olarak işlem yapan sayfaya gönderdiğim takdirde $_POST['arama'] değeri null olmaktan çıkıyor."" olarak işlem yapan sayfaya gönderdiğim takdirde $_POST['arama'] değeri null olmaktan çıkıyor."
    hem oyle diyorsun hemde veriyi "&nbsp;" ile boş gonderirim diyorsunuz ben hiç bişi anlamadım????

    Koaly Geslin.
  • 17-07-2008, 15:18:09
    #18
    Dogu_Bey adlı üyeden alıntı: mesajı görüntüle
    hem oyle diyorsun hemde veriyi "&nbsp;" ile boş gonderirim diyorsunuz ben hiç bişi anlamadım????
    Koaly Geslin.
    arama yapılacak olan veri tek vuruşluk bir spacebar ve/veya "&nbsp;" olduğunda bunu boş olarak görmemek ve işleme sokmak kişiyi rahatsız etmiyorsa sıkıntı yok bildiğiniz gibi devam edin.

    ha lakin biri çıkar bir for döngüsü ile " " verisini ~ defa betiğe gönderip işlem yapmanızı sağlar o zaman açar bir daha okursunuz yazdıklarımı.