PHP interesse |
|
<?
function PageViewLimiet()
{
$kLimiet = 60;
// Aantal pageviews per $kSeconden
$kSeconden = 60;
// Om de X seconden gaan de views weer naar 0
if(!isset($_SESSION['clicks']))
{
// Sessie clicks bestaat nog niet, dus aanmaken
$_SESSION['clicks'] = array
(
'clicks' => 0, // Aantal kliks
'time' => time() // Tijd wanneer de sessie wordt aangemaakt
);
// Dit allemaal in een array, het kan
// ook apart, maar dit werkt wel net zo handig
}
$_SESSION['clicks']['clicks']++;
// Tellertje + 1 doen, elke pageview
if($_SESSION['clicks']['time'] < (time()-$kSeconden))
{
// Als de huidige tijd - $kSeconden de tijd heeft
// gepasseerd wanneer de sessie time is, wordt het
// aantal clicks + de tijd weer naar 0 en naar de
// huidige tijd gezet
$_SESSION['clicks']['clicks'] = 0;
$_SESSION['clicks']['time'] = time();
}
else
{
if($_SESSION['clicks']['clicks'] > $kLimiet)
{
// En hier is het limiet bereikt dan
echo 'Je hebt jouw <b>pageviewlimiet</b> voor deze minuut bereikt!<br />';
echo 'Je moet nog '.($kLimiet - (time() - $_SESSION['clicks']['time'])).' seconden wachten!<br />';
exit;
}
}
}
?>
Een eenvoudig kliklimiet, je kunt hem opvragen op pagina's waar het nodig is met PageViewLimiet();
Vergeet dan niet bovenaan de pagina('s) session_start(); te doen, want dit gebruikt sessie's.
Voorbeeld hoe het zou kunnen werken:
<?
session_start();
require_once 'config.php';
// In dit bestand staat dan de functie
PageViewLimiet();
echo 'Welkom op deze pagina.';
?>
<? function PageViewLimiet() { $kLimiet = 60; // Aantal pageviews per $kSeconden $kSeconden = 60; // Om de X seconden gaan de views weer naar 0 if(!isset($_SESSION['clicks'])) { // Sessie clicks bestaat nog niet, dus aanmaken $_SESSION['clicks'] = array ( 'clicks' => 0, // Aantal kliks 'time' => time() // Tijd wanneer de sessie wordt aangemaakt ); // Dit allemaal in een array, het kan // ook apart, maar dit werkt wel net zo handig } $_SESSION['clicks']['clicks']++; // Tellertje + 1 doen, elke pageview if($_SESSION['clicks']['time'] < (time()-$kSeconden)) { // Als de huidige tijd - $kSeconden de tijd heeft // gepasseerd wanneer de sessie time is, wordt het // aantal clicks + de tijd weer naar 0 en naar de // huidige tijd gezet $_SESSION['clicks']['clicks'] = 0; $_SESSION['clicks']['time'] = time(); } else { if($_SESSION['clicks']['clicks'] > $kLimiet) { // En hier is het limiet bereikt dan echo 'Je hebt jouw <b>pageviewlimiet</b> voor deze minuut bereikt!<br />'; echo 'Je moet nog '.($kLimiet - (time() - $_SESSION['clicks']['time'])).' seconden wachten!<br />'; } } } ?> Een eenvoudig kliklimiet, je kunt hem opvragen op pagina's waar het nodig is met PageViewLimiet(); Vergeet dan niet bovenaan de pagina('s) session_start(); te doen, want dit gebruikt sessie's. Voorbeeld hoe het zou kunnen werken: <? require_once 'config.php'; // In dit bestand staat dan de functie PageViewLimiet(); echo 'Welkom op deze pagina.'; ?>
Ik snap niet precies hoe je dit allemaal moet instellen?
|