İş Başa Düştü Yine

flood.php
<?php
include("connect.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: banned.php');
}
}
$q2 = mysql_query("select * from tblbanlist where ip='$ip'");
if(mysql_num_rows($q2)>=40)
{
header('Location: banned.php');
}
$settime = "00:00";
$gettime = date("h:i");
if($gettime==$settime)
{
$trunlog = mysql_query("truncate table tbllog");
if($trun)
{
header('Location: banned.php');
}
}
$setday = "15";
$a = date("d");
if($setday==$a)
{
$trunban = mysql_query("truncate table tblbanlist");
if($trunban)
{
header('Location: banned.php');
}
}
?>connect.php<?
$connect=mysql_connect("localhost","byfresh","123456")
or die("Veritabanina baglanilamadi. Lütfen daha sonra tekrar deneyin...");
mysql_select_db("byfresh",$connect)
or die("Tablo seçilemedi. Lütfen daha sonra tekrar deneyin...");
?>veritabani.sqlCREATE TABLE `tblbanlist` ( `id` int(11) NOT NULL auto_increment, `ip` varchar(50) collate utf8_turkish_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_turkish_ci AUTO_INCREMENT=5 ; CREATE TABLE `tbllog` ( `id` int(11) NOT NULL auto_increment, `ip` varchar(50) collate utf8_turkish_ci NOT NULL, `tarih` varchar(50) collate utf8_turkish_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_turkish_ci AUTO_INCREMENT=80 ;banned.php
Burayı İstediginiz gibi Düzenleyin örnek: Banlandınız giremezsiniz yada yasaklandınız gibi bir resim...
İlk Mesaj Düzenlenmiştir...
Kendi Sorunumu Kendim Çözdüm...
Yardımcı Olmak İsteyen Arkadaşlara Yinede Teşekkürler...
Sorun Halledilmiştir...
Sizlerde Kullanabilirsiniz...
Not: flood.php içindeki 40 değerini dilerseniz 50 yaparsınız yada 100 yaparsınız okadar tıklama değeri oluşmuş olur...
Böylelikle Syn atacklara Karşıda Önlem Almış Olursunuz...
Banlanan Kişi 15 Gün Yasaklanmış Olur ( İp Nodan)
flood.php içindeki:
$setday = "15";
$a = date("d");
if($setday==$a)
15 Değeri Cogaltırsanızda örnek: 30 yaparsanızda 30günlük banlanmış olur...
$settime = "00:00";
$gettime = date("h:i");
if($gettime==$settime)
Her Gece Saat 00.00'da yeniden başlat komutu ile eger bir ip no gün içerisinde 35 sefer tıklamışsa siteyi 40'a ulaştıgında banlanmaması için 00.00'da siliniyor ve güne yeniden 1-2-3 tıklama diye sayarak başlıyor... ama Gün İçerisinde 40 defa F5 yapıyorsa sayfada yada tıklıyorsa eger yazılan banlanma değeri (flood.php icindeki 40) 40 ise banlanıyor ve sgl'ye kaydediler ip nosu...
