• 10-01-2010, 07:04:37
    #1
    Php'de Session ile flood koruma kodu yazabilirmisiniz arkadaşlar...

    mesela burada asp ile yapılmış...
    http://yeni.gameower.de/
    5 sefer f5 yapınca yada bir link tıklanınca google'a yönlendirmişler..
    phpde bu sistem nasıl yapılır acaba..?
  • 10-01-2010, 10:05:04
    #2
     <?php
    session_start(); 
     //www.forumistik.com
    
    //sessiona son kaydettiğimiz zaman değeri 10 saniyeyi geçmemiş ise işlem yapma...
    
    if(@$_SESSION['kontrolzamani'] + 10 > time()) { 
    $kalanzaman=$_SESSION['kontrolzamani']-time()+10;
    
    //eğer 10 saniye den önce tekrar işlem yapmak ister ise uyarı verelim
    echo 'İşlem yapmak için '.$kalanzaman.' saniye beklemelisiniz!';
    exit; 
    
    } else {
    //10 saniyeyi geçmiş ise işlem yapabiliriz artık
        
    // işlem yapacağımız kodları buraya yazabilirsiniz...
    
    echo 'işlem yapıldı! ';
    
    
    //son olarak eğer işlem yapıldı ise belirlediğimiz sessiona zamanımızı kaydediyoruz!
    
    $_SESSION['kontrolzamani'] = time(); 
    }  
    ?>
    http://www.forumistik.com/forum/k573...rol-yapma.html
  • 10-01-2010, 10:14:49
    #3
    Üyeliği durduruldu
    curl ile saldirildiginda hiç bir işe yaramaz. yada benzer session yada cookie yi tutmayan kod kullanildiginda
  • 10-01-2010, 14:12:35
    #4
    Aventgrup'un bir flood koruma modülü vardı.
    <?/////////////////////////////////// AYARLAR ///////////////////////////////////////////////
    $zasimi		= 1; 		//Bağlantı Kabul edilecek Süre Aralığı ( saniye )
    $proxyyasak	= "e";		//Proxy Girişleri Yasaklansınmı ? ( e | h olarak girilmeli )
    $myenile 	= 3;		//Modül çıktığında Sayfayı Yenileme Süresi ( saniye )
    $yonlendirme	= "?";		//Modül Çıktıktan Sonra Yönlendirilecek Sayfa ( ? aynı sayfa )
    /////////////////////////////////////////////////////////////////////////////////////////////
    #  Kullanım Kılavuzu ; Yazılımın Kullanımı oldukça basittir. guvenlik.php bir kök dosyadır ve 
    # tüm sayfalarınıza include edilmiş olmalıdır. Çalıştırılabilir bütün sayfalarınızın en üst
    # satırına include "guvenlik.php"; şeklinde ekleyerek modülü devreye sokabilirsiniz. 
    #
    # PHPNuke, phpBB, Vbullettin gibi hazır portallarda kullanımı için Kilit ayar dosyanızın 
    # "config.php gibi" en üst satırına include "guvenlik.php"; yazarakta bütün sayfalarda
    # kullanılabilir olmasını sağlayabilirsiniz.
    #
    # Modülün IP Adreslerini ve giriş sürelerini tuttuğu dosya adı "yasak.txt" dir. Bu dosyayıda
    # FTP ile web alanınıza yüklemeniz gerekir. Yükledikten sonra "Attribute" değerini 777 yapmalı,
    # alt dizin ve klasörlerde modül çalıştırılacak ise o bölümlerede kopyalamalısınız.
    #
    #  ______________________________________________________
    #
    #  Avrasya Veri ve NetWork Teknolojileri Geliştirme Grubu
    #  AventGrup 1999-2005
    #  www.aventgrup.net
    #  info@aventgrup.net
    #  ______________________________________________________
    #
    ///////////////////////////////////////////////////////////////////////////////////////////?>
    <?if ($proxyyasak == "e" and $HTTP_VIA >""){?>
    <body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" bgcolor="#E0E0E0">
    <p><br>
    <br>
    <br>
    <br>
    &nbsp;</p>
    <table border="0" style="border-collapse: collapse" width="100%" cellpadding="0" height="110">
    <tr>
                    <td bgcolor="BLACK">
                    <div align="center">
                                            <table border="0" width="336" id="table1" cellspacing="0" cellpadding="0"
    height="66">
                                                    <tr>
                                                            <td valign="center">
                                                            <p align="center">
                                                            <font face="Verdana" style="font-size: 10pt; font-weight: 700"
    color="#DBDBDB">
                                                            Güvenlik Modülü !</font><font face="Verdana" style="font-weight:
    700" color="#C0C0C0" size="2"><br>
                                                            </font>
                                                            <font face="Verdana" style="font-size: 9pt; font-weight: 700"
    color="#C0C0C0">
                                                            <br>
                                                            </font>
                                                           <font face="Arial" style="font-size: 8pt; "
    color="#C0C0C0">
                                                            Proxy Girişleri 
    														
    Yasaklıdır.</font></td>
                                                    </tr>
                                            </table>
                                    </div>
    
    <?exit;};?>
    <?
    $dakika=date("i");
    $saniye=date("s");
    $adres=$REMOTE_ADDR;
    $dosya="yasak.txt";
    $hoptiri=fopen($dosya,'r');
    $oku=fgets($hoptiri,100000);
    fclose($hoptiri);
    $sira=explode(">",$oku);
    $sappa=$sira[0]+1;
    $ziplat=explode(";",$sira[1]);
    for ($i=0;$i<50;$i++){
    $ayikla=explode("|",$ziplat[$i]);
    if ($HTTP_VIA > ""){$kaynak=$HTTP_X_FORWARDED_FOR;}else{$kaynak=$REMOTE_ADDR;};
    if ($kaynak==$ayikla[0] and date("i")==$ayikla[1] and date("s")<$ayikla[2]+$zasimi){
    $ziplat[$i]= "$adres|$dakika|$saniye";
    ?>
    
    <head>
    <meta http-equiv="Content-Language" content="tr">
    <meta http-equiv="Refresh" content="<?echo $myenile;?>; url=<?echo $yonlendirme;?>">
    <title>Güvenlik Modülü</title>
    </head>
    
    
    <body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" bgcolor="#E0E0E0">
    <p><br>
    <br>
    <br>
    <br>
    &nbsp;</p>
    <table border="0" style="border-collapse: collapse" width="100%" cellpadding="0" height="110">
    <tr>
                    <td bgcolor="BLACK">
                    <div align="center">
    					<table border="0" width="336" id="table1" cellspacing="0" cellpadding="0" 
    height="66">
    						<tr>
    							<td valign="top">
    							<p align="center">
    							<font face="Verdana" style="font-size: 10pt; font-weight: 700" 
    color="#DBDBDB">
    							Güvenlik Modülü !</font><font face="Verdana" style="font-weight: 
    700" color="#C0C0C0" size="2"><br>
    							</font>
    							<font face="Verdana" style="font-size: 9pt; font-weight: 700" 
    color="#C0C0C0">
    							<br>
    							</font>
    							<font face="Arial" style="font-size: 8pt" color="#C0C0C0">
    							Girişiniz Askıya Alındı.<br>
    						Lütfen Bekleyin.</font></td>
    					</tr>
    				</table>
    			</div>
    <?
    for ($e=0;$e<50;$e++){$yazilacakveri= "$yazilacakveri;$ziplat[$e]";};
    $oyt=fopen($dosya,'w');
    $yazilacakveri="$sira[0]>$yazilacakveri";
    fputs($oyt,"$yazilacakveri");
    fclose($oyt);
    exit;
    };};
    $ziplat[$sappa]="$adres|$dakika|$saniye";
    for ($e=1;$e<50;$e++){$yazilacakveri= "$yazilacakveri;$ziplat[$e]";};
    if ($sappa>50){$sappa=1;};
    $yazgec="$sappa>$yazilacakveri";
    $oyt=fopen($dosya,'w');
    fputs($oyt,$yazgec);
    fclose($oyt);
    ?>
    Kullanımı:
    <? include "guvenlik.php"; ?>
    İstediğiniz php sayfaya ekleyebilirsiniz.
  • 10-01-2010, 16:49:08
    #5
    FaTe adlı üyeden alıntı: mesajı görüntüle
     <?php
    session_start(); 
     //www.forumistik.com
    
    //sessiona son kaydettiğimiz zaman değeri 10 saniyeyi geçmemiş ise işlem yapma...
    
    if(@$_SESSION['kontrolzamani'] + 10 > time()) { 
    $kalanzaman=$_SESSION['kontrolzamani']-time()+10;
    
    //eğer 10 saniye den önce tekrar işlem yapmak ister ise uyarı verelim
    echo 'İşlem yapmak için '.$kalanzaman.' saniye beklemelisiniz!';
    exit; 
    
    } else {
    //10 saniyeyi geçmiş ise işlem yapabiliriz artık
        
    // işlem yapacağımız kodları buraya yazabilirsiniz...
    
    echo 'işlem yapıldı! ';
    
    
    //son olarak eğer işlem yapıldı ise belirlediğimiz sessiona zamanımızı kaydediyoruz!
    
    $_SESSION['kontrolzamani'] = time(); 
    }  
    ?>
    http://www.forumistik.com/forum/k573...rol-yapma.html
    bu kod çalıştı çok çok teşekkürler fakat bu kodda şunu yapabilirmiyiz...
    mesela ben bunu index.php içine ekliyorum...
    10 sefer f5 yapınca yani index.php yi aynı session 10 sefer tıklayınca baska siteye mesela google.com'a yönlendirsin istiyorum...
  • 11-01-2010, 09:51:37
    #6
    Bu kod F5 yapma sayısından ziyade , 10 saniye yada belirleyeceğiniz saniyede tekrar sayfa açılırsa uyarı veriyor.Bu uyarı verilen yere yönlendirme ekleyebilirsiniz tabiki;

    verdiğim koddaki

    echo 'İşlem yapmak için '.$kalanzaman.' saniye beklemelisiniz!';


    yerine

    header('Location:http://www.google.com');

    yazarak google a yönlendirebilirsiniz.