Scripts

Anti flood

Met dit script kun je een max zetten op het laten laden van een pagina, bijvoorbeeld een gastenboek. Het enige wat je hoeft te doen is $error en $maxaant aan passen, en vervolgens kun je overal waar je dit bestand neer zet de functie antiflood() oproepen Veel plezier PHP newbie

anti-flood
<?php
session_start();

function antiflood()
{

    $maxaant = 15; // Maximale aantal bezoeken in 1 minuut
	$time = 60; //tijd in seconden
    $error = 'Je hebt deze pagina meer dan '.$maxaant.' bezocht in '.$time.' seconden, dit valt onder flooding en is niet de bedoeling'; // text bij te veel bezoeken.
    $melding = TRUE; //TRUE als je wilt weergeven hoevaak de pagina al is bezocht, anders FALSE
     
    if(isset($_SESSION['flood']))
    {
        if((time()-$_SESSION['flood']['TijD']) >= $time)
        {
            unset($_SESSION['flood']);
            
            $_SESSION['flood']['TijD']=time();
            $_SESSION['flood']['Views']=1;
        }
        else
        {
            $_SESSION['flood']['Views']++;
            
            if($_SESSION['flood']['Views']>=$maxaant)
            {
                exit($error);
            }
        }
        if(isset($_SESSION['flood']['Views']))
        {
            $aantnog = $maxaant - $_SESSION['flood']['Views'];
            
            if($melding == TRUE)
            {
                echo 'je mag deze pagina nog '.$aantnog.' keer bezoeken binnen '.$time.' seconden.<br>';
            }
        }
    }
    else
    {
        $_SESSION['flood']['TijD']=time();
        $_SESSION['flood']['Views']=1;
        
        if($melding == TRUE)
        {
            echo 'je mag deze pagina nog '.--$maxaant.' keer bezoeken binnen '.$time.' seconden.';
        }
    }
}
antiflood();
?> 

Reacties

0
Nog geen reacties.