astropaykartsatis.net
User Tag List

Yeni Konu Aç Cevap Yaz
Toplam 2 Sayfadan 1. Sayfa
4.01.2011, 00:31 1 (permalink)
Azat Metin
  • Üyelik Tarihi4.11.2010
  • Ticaret Sayısı0
  • Mesajlar284
Site İçi Flood Engelleme #permalink (permalink)
Merhaba arkadaşlar,
Bu script eğer bir sitedeki bir ip dakikada 40 link açıyorsa onu direk belirlediğiniz sayfaya yönlendiyor yada belirlediğiniz bir yazı ona çıkıyor Sözü fazla uzatmadan kodlara dökersek

PHP- Kodu:
<?php

$a 
= (int)date("i");
      
$ip $_SERVER['REMOTE_ADDR']; 
      
$exec mysql_query("insert into tbllog(ip,tarih) values('$ip','$a')");
      
$z $a-1;
      
$q mysql_query("select * from tbllog where ip='$ip' and tarih >='$z'");
      if(
mysql_num_rows($q)>=40)
      {
         
$ban mysql_query("insert into tblbanlist(ip) values('$ip')");
         if(
$ban)
         {
            
header('Location: ban.html');
         }
      }
      
$q2 mysql_query("select * from tblbanlist where ip='$ip'");
      if(
mysql_num_rows($q2)>=2)
      {
            
header('Location: ban.html');
      }
         
      
$settime "00:00";
      
$gettime date("h:i");
      if(
$gettime==$settime)
      {
         
$trunlog mysql_query("truncate table tbllog");
         if(
$trun)
         {
            
header('Location: bakim.html');
         }
      }
      
$setday "15";
      
$a date("d");
         if(
$setday==$a)
         {
            
$trunban mysql_query("truncate table tblbanlist");
            if(
$trunban)
            {
               
header('Location: bakim.html');
            }
         }
?>


Daha sonra PHPmyAdminden Sorgulatıp tabloları olusturacağimiz kodları verelim

PHP- Kodu:
CREATE TABLE `tblbanlist` (
  `
idint(11NOT NULL auto_increment,
  `
ipvarchar(50collate utf8_turkish_ci NOT NULL,
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_turkish_ci AUTO_INCREMENT=;
CREATE TABLE `tbllog` (
  `
idint(11NOT NULL auto_increment,
  `
ipvarchar(50collate utf8_turkish_ci NOT NULL,
  `
tarihvarchar(50collate utf8_turkish_ci NOT NULL,
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_turkish_ci AUTO_INCREMENT=80 


Umarım kendimi ifade edebilmişimdir.
Konu ile ilgili sorulara herzaman açığım.
Saygılarımla..
Azat Metin / www.yasalhost.com
Azat@yasalhost.com

Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
4.01.2011, 01:31 2 (permalink)
Angelo
  • Üyelik Tarihi13.12.2004
  • Yaş35
  • Ticaret Sayısı0
  • Mesajlar5,472
İki problem var, date(i) şeklinde aldığınız için, 3:29 için 29 u alıyor. Aynı kişi dakika bölümü 29 olan, herhangi başka bir gün ve saatte girsede, banlama limitine sayar yine. 00:00 da kimse ziyaret etmezse tablo zaten sıfırlanmaz. Tablodan tüm geçmiş ayak izi satırlarını çekmek de oldukça zahmetli bir işlem.

$_SESSION['visited']++;

şeklinde bir sayaç kullanılarak, çok daha verimli yapılabilir. Yine de paylaştığınız için teşekkürler
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
5.01.2011, 14:19 3 (permalink)
Azat Metin
  • Üyelik Tarihi4.11.2010
  • Ticaret Sayısı0
  • Mesajlar284

İki problem var, date(i) şeklinde aldığınız için, 3:29 için 29 u alıyor. Aynı kişi dakika bölümü 29 olan, herhangi başka bir gün ve saatte girsede, banlama limitine sayar yine. 00:00 da kimse ziyaret etmezse tablo zaten sıfırlanmaz. Tablodan tüm geçmiş ayak izi satırlarını çekmek de oldukça zahmetli bir işlem.

$_SESSION['visited']++;

şeklinde bir sayaç kullanılarak, çok daha verimli yapılabilir. Yine de paylaştığınız için teşekkürler

Yardımcı olduğunuz için ben teşekkür ederim.
Söylemek istediğim birkaç şey var. Banlama limiti sadece o dakika için geçerlidir. Neden tabloları sıfırlama ihtiyacı duyuyoruz ki ? Ben denedim daha önce bu kodları. Sorunsuz çalışıyor diye hatırlıyorum. Neyse hocam kurcalamaya gerek yok.. Tabloları sıfırlarsak birşey kaybetmeyiz
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
5.01.2011, 14:23 4 (permalink)
Lady_
  • Üyelik Tarihi5.01.2011
  • Ticaret Sayısı0
  • Mesajlar14
Teşekkürler Güzel Anlatım Olmuş.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
5.01.2011, 16:25 5 (permalink)
Azat Metin
  • Üyelik Tarihi4.11.2010
  • Ticaret Sayısı0
  • Mesajlar284

Teşekkürler Güzel Anlatım Olmuş.

Okuduğunuz için ben teşekkür ederim.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
5.01.2011, 21:28 6 (permalink)
Angelo
  • Üyelik Tarihi13.12.2004
  • Yaş35
  • Ticaret Sayısı0
  • Mesajlar5,472

Yardımcı olduğunuz için ben teşekkür ederim.
Söylemek istediğim birkaç şey var. Banlama limiti sadece o dakika için geçerlidir. Neden tabloları sıfırlama ihtiyacı duyuyoruz ki ? Ben denedim daha önce bu kodları. Sorunsuz çalışıyor diye hatırlıyorum. Neyse hocam kurcalamaya gerek yok.. Tabloları sıfırlarsak birşey kaybetmeyiz

Şunun için gerekir.
$a = (int)date("i");

Şu anda burada saat 5 Ocak, 11:24 AM.
Ben bu siteye girdiğimde, $a değeri -> 24. Tabloya bunu sokuyorsunuz.

Dakika kısmı 20'den büyük, 40 sayfa gezimi yaparsam, tarihten bağımsız, 10 gün sonra bile dakika kısmı 20'den büyük bir saatte siteden banlanırım. Sadece dakikayı baz alarak insanların kaç sayfa gezdiğini hesaplamak yanlış kullanım.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
5.01.2011, 22:58 7 (permalink)
Azat Metin
  • Üyelik Tarihi4.11.2010
  • Ticaret Sayısı0
  • Mesajlar284

Şunun için gerekir.
$a = (int)date("i");

Şu anda burada saat 5 Ocak, 11:24 AM.
Ben bu siteye girdiğimde, $a değeri -> 24. Tabloya bunu sokuyorsunuz.

Dakika kısmı 20'den büyük, 40 sayfa gezimi yaparsam, tarihten bağımsız, 10 gün sonra bile dakika kısmı 20'den büyük bir saatte siteden banlanırım. Sadece dakikayı baz alarak insanların kaç sayfa gezdiğini hesaplamak yanlış kullanım.

Katılıyorum, haklısınız.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
6.01.2011, 00:01 8 (permalink)
Mywedding
Mywedding rightful
  • Üyelik Tarihi26.09.2006
  • Ticaret Sayısı0
  • Mesajlar4,336
güzel paylaşım, angelo'nun işaret ettikleriyle de desteklerseniz,

neden kullanmayalım,

teşekkürler
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
6.01.2011, 02:00 9 (permalink)
Azat Metin
  • Üyelik Tarihi4.11.2010
  • Ticaret Sayısı0
  • Mesajlar284

güzel paylaşım, angelo'nun işaret ettikleriyle de desteklerseniz,

neden kullanmayalım,

teşekkürler

Rica ederim, yardımcı olabildiysem ne mutlu bana.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
20.02.2011, 13:33 10 (permalink)
husmen73
  • Üyelik Tarihi1.05.2010
  • Ticaret Sayısı0
  • Mesajlar17
Bunları yaparken, arama motorlarınında engellenebileceğini unutmayınız.
Hızlı PM Gönder
Gönder
Alıntı ile Cevapla
Yeni Konu Aç Cevap Yaz
Toplam 2 Sayfadan 1. Sayfa
Şu an bu konuyu okuyan kişi sayısı: 1 (0 üye ve 1 misafir)
 
Seçenekler
Yetkileriniz
Konu Acma Yetkiniz Yok Cevap Yazma Yetkiniz Yok Eklenti Yükleme Yetkiniz Yok Mesajınızı Değiştirme Yetkiniz Yok
BB code is Açık Smileler Açık [IMG] Kodları Açık HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık
Forum Kuralları
Benzer Konular
Konu Konuyu Başlatan Forum Cevap Son Mesaj
Profesyonel ***** Site İçi Full Optimizasyon ( WebLoader Script ) ErdeM Seo Danışmanlığı 13 17.02.2013 23:33
Site İçi Arama Scripti[İstek] halilarici php scriptler 9 3.03.2012 19:13
syn flood engelleme ??? hoppala Web Hosting Kurulum ve Ayarlar 4 29.12.2005 20:05
Google Site İçi Arama Hakkında Skeleton Webmaster Genel Konular 2 28.05.2005 15:59

Forum Saati: 06:06. Zaman dilimi GMT +3 olarak ayarlanmıştır.
Powered by vBulletin™ Version 3.8.7
Copyright © 2017 vBulletin Solutions, Inc. All rights reserved.