• 22-03-2020, 14:50:18
    #1
    İki dosyalık bir mesaj formum var.

    mesaj.php de form alanına mesaj giriliyor.
    mesajsonuc.php ye gönderip boş kısımları kontrol ettiriyorum geri butonu ile gönderip eksik kalan kısımları tamamlatıyorum tüm alanlar dolu ise mesajı veritabanına kaydedip sonucu başarılı olarak gösteriyorum. Ama kişi bir önceki sayfaya geri gidince kolaylık olsun diye yaptığım value değerleri otomatik görünmeye devam ediyor.


    Tabi form alanında kendimce basit bir doğrulama işlemi yaptıyorum. Toplama işlemi. Ama bu durumda da toplama işlemi sonucu tekrar tekrar yazarak kolayca aynı mesajları göndermesi için açık bırakmış oluyorum galiba.


    Güvenliği bir üst seviyeye çıkarmak için, kısıtlama konusunda ne önerirsiniz?

    Mesela aynı ip adresinden bir süre geçene kadar ikinci yada üçüncü mesaj atmayı nasıl önleyebilirim?
  • 22-03-2020, 14:55:23
    #2
    Kullanıcı üzerinden yapılabilir yük bindirmeden. Fakat IP üzerinden işlemler için veritabanı gerekli.
    En hızlı ve yüksüz verimli çözüm SESSION ve Cookie birleşimi olur. Bunun haricinde IP üzerinden yapmaya kararlıysan dediğim gibi veritabanı tarafında sürekli sorgu yapılması gerekiyor.
  • 22-03-2020, 14:59:25
    #3
    TDBilisim adlı üyeden alıntı: mesajı görüntüle
    Kullanıcı üzerinden yapılabilir yük bindirmeden. Fakat IP üzerinden işlemler için veritabanı gerekli.
    En hızlı ve yüksüz verimli çözüm SESSION ve Cookie birleşimi olur. Bunun haricinde IP üzerinden yapmaya kararlıysan dediğim gibi veritabanı tarafında sürekli sorgu yapılması gerekiyor.

    Veritabanı ip üzerinden en basit mantığı nedir hocam?
  • 22-03-2020, 15:05:01
    #4
    buddy adlı üyeden alıntı: mesajı görüntüle
    Veritabanı ip üzerinden en basit mantığı nedir hocam?
    IP alırsınız Remote Addr ile. Veritabanına mesajı gönder butonuna tıklanıldığında tarihi ve IP yi yazarsınız. Ayrıca butona tıklanıldığında bir if durumu belirtirsiniz. İf şu anki ip veritabanında mevcutsa ve time() ile veritabanındaki tarihi çıkartıp çıkan zaman şundan büyükse tekrar gönder. Else limit hatası şu zaman sonra tekrar gönderin diye.
    Tabii ki veritabanı tarafında ID, IP, Zaman rowları olması gerekiyor.