|
|
#1 (permalink) |
|
Üyelik Tarihi: 18.03.2007
Yer: ankara
Yaş: 24
Mesaj: 18
|
Flood protection
Merhabalar, basit bir guestbook düşünün, insanlar yorumlarını yolluyorlar post methodu ile. Yalnız şöyle bir sorunla karşılaşıyorum, yorumu yolladıktan sonra, o sayfayı refresh ettiğinizi düşünün. Her refresh edişimde, yorum kendisini tekrarlıyor. Acaba sebebi ne olabilir? Ayrıca zaten yorumu yollamadan önce bir "verification code" istiyor. Ama genede refresh edince yorumlar geliyor Fikri olan var mı? |
|
|
|
|
|
#2 (permalink) |
|
Üyelik Tarihi: 13.07.2000
Yer: LND
Mesaj: 4,279
|
Re: Flood protection
Flood korumasi istiyorsan bu baska bir sey ama dedigin sorunu yorumu kaydettikten sonra kullaniciyi server tarafinda redirect ettirerek cozebilirsin.
Ciddi bir flood korumasi istiyorsan bunu yazmak biraz vakit alacaktir. Bu arada verification kodu istiyomus CAPTCHA bahsediyorsa guestbook kodunda bug var demektir yada CAPTCHA mantiksiz bir skilde implemente edilmis demektir.
__________________
FERRUH.MAVİTUNA - İnanmıyorum, yeni site! |
|
|
|
|
|
#4 (permalink) |
|
Üyelik Tarihi: 18.03.2007
Yer: ankara
Yaş: 24
Mesaj: 18
|
Re: Flood protection
cookie ile check edeyim dedim, yani 60sn gecmeden yeni bir mesaj post etmesini engelleyecek bir sistem denedim. Sanırım yemedi ya da yanlış yaptım,
kodları sadeleştirdim epey, anlamadığınız birşey olursa acıklarım.. not: kodlar ektedir |
|
|
|
|
|
#5 (permalink) |
|
Üyelik Tarihi: 19.07.2007
Yer: istanbul
Mesaj: 22
|
Re: Flood protection
yorum eklendikten sonra sessionu ve postu boşaltman lazım.
örneğin: //yorum ekleme kısmı unset($_SESSION['guvenlik']); unset($_POST); Sanırım sen yorum ekleme kısmını yine aynı sayfada yapıyorsun.
__________________
Spoiler:
|
|
|
|
|
|
#6 (permalink) |
|
Üyelik Tarihi: 18.03.2007
Yer: ankara
Yaş: 24
Mesaj: 18
|
Re: Flood protection
tşkler mesaj icin,
evet yorum eklemeyi aynı sayfa icerisinde yapıyorum. Şöyle düşün: bir news publising yazdım, yazılar post ediliyor, yazının hemen altında "comment" var, commente tıklayınca yorumlar ve comment form cıkıyor gene aynı sayfada.. ben kod icinde yazıyı post ettikten sonra, Kod:
setcookie('FloodCheck', '', time()+60);
Senin verdiğin cözümü acıkcası anlamadım, biraz daha acar misin? |
|
|
|
|
|
#7 (permalink) |
|
Üyelik Tarihi: 19.07.2007
Yer: istanbul
Mesaj: 22
|
Re: Flood protection
Şimdi verileri tek sayfada işlediğin için sayfa postback olunca yine kaydetmesi gayet normal çünkü eminim post geliyomı diye kontrol ettiriyosun !empty($_POST['veri']) gibisinden. verileri işledikten sonra bu post ve güvenlik kodunun olduğu session'u unset(temizlemek) etmezsen sayfa postback olunca yine şarta girer ve veriler işlenir. Önce bunları temizlemen gerek sonra cookie olayına gelince http://tr2.php.net/setcookie
yanlış kullanıyorsun birde şöyle dene. setcookie('FloodCheck', '60', time()+60); şeklinde cookie'yi attın diyelim. if(!empty($_Cookie['FloodCheck'])){ echo "60 saniye bekleyiniz lütfen.."; }
__________________
Spoiler:
|
|
|
|
|
|
#8 (permalink) | |
|
Üyelik Tarihi: 18.03.2007
Yer: ankara
Yaş: 24
Mesaj: 18
|
Re: Flood protection
Daha değişik bir cözüm buldum, last post zamanı SQL den cekip, o an ki zamanda cıkarıp sokuyorum while loopa..
ama senin cözümünü gercekten incelemek isterim.. Alıntı:
-> session_start kullanmıyorum, cünkü güvenlik catcpa değil.. basit bir matematik sorusu soruyor, cevapalrsan post eder.. server GD desteklemiyor malesef.. sana özelden url yi atıyorum. |
|
|
|
|
|
|
#9 (permalink) |
|
Üyelik Tarihi: 13.07.2000
Yer: LND
Mesaj: 4,279
|
Re: Flood protection
Cookileri browserin gonderdigini varsayarsak, bu kontrolu basitce gecilebilir.
Ek olarak flood programlari ve benzeri programlar zaten bu sekilde cookileri desteklemedeginden otomatik olarak bu koruma hicbir ise yaramayacaktir, diger session tabanli korumlarda ayni sekilde. Cunku %99 olarak program her seferinde yeni bir session acacaktir. Dolayisiyla CAPTCHA olmayacaksa IP tabanli kontrolu daha mantikli. O IP adresinin son 60 saniyede kac tane mesaj gonderdigine bakabilir ve bloklayabilirsin.
__________________
FERRUH.MAVİTUNA - İnanmıyorum, yeni site! |
|
|
|
Zoque'a hoşgeldiniz!