Scripts

[Yearupie] Pagina limiet script V2

Dit script is bedoeld om het dataverkeer van je site te verminderen. Mensen die op je site komen mogen bijvoorbeeld maar een 10 pagina's per minuut bekijken. Dan kunnen ze er 10 bekijken en daarna zullen ze een melding krijgen dat ze het maximum hebben bereikt. Wat zit erin? Makkelijk aanpasbare pagina's en tijd Melding wanneer je limiet bereikt hebt. Voorbeeld script Wat is nieuw? Iedere tijd word apart opgeslagen Er is 1 sessie uit het script. Wat moet ik hiermee? Mogelijk meer betalende gebruikers op je site. Oude script: http://www.phphulp.nl/php/scripts/11/1752/ Waarschuwing: Het is mogelijk om dit te ontwijken d.m.v. het verwijderen van je sessie's. Ook is het verplicht om session_start() boven aan je pagina te hebben staan!

yearupie-pagina-limiet-script-v2
<?php
// Made by: Yearupie
// Email: [email protected]
// Pagina limiet script V2

function PageLimit($maxPages,$timeLimit) {

	# Kijken of er een sessie bestaat
	if(isset($_SESSION['time'])) {
	
		# Iedere tijd checken
		foreach($_SESSION['time'] AS $id => $time) {
		
			# Kijken of tijd voorbij is
			if($time <= time()) {
			
				# Tijd uit de sessie verwijderen
				unset($_SESSION['time'][$id]);
			}
		}        
		# Kijken of je nog niet het limiet hebt behaald
		if(count($_SESSION['time']) <= $maxPages) {
		
			# Pagina's + 1
			$_SESSION['time'][] = time() + $timeLimit;
		
			# Webpagina mag worden weergegeven
			return true;
		}
		# Pagina limit bereikt
		else {
		
			# Webpagina niet worden weergegeven
			return false;
		}
	}    
	# Sessie bestaat nog niet
	else {
	
		# Zet de tijd naar nu
		$_SESSION['time'] = array(time());
		
		# Webpagina mag worden weergegeven
		return true;
	}
}


/* Instellingen */

# Gegevens array aanmaken
$gegevens = array();

# Aantal pagina's bekijken
$gegevens['pages'] = 10;

# Reset na xxx seconde
$gegevens['time'] = 60;


/* Voorbeeld script */

# Je hebt nog niet het limiet behaald
if(PageLimit($gegevens['pages'],$gegevens['time'])){

	// ... webpagina    
}
# Je hebt je limiet behaald
else {

	# Melding limiet
	echo 'Helaas, je hebt al meer dan '.$gegevens['pages'].' pagina\'s bekeken de afgelopen '.$gegevens['time'].' seconde!';  
}
?>

Reacties

0
Nog geen reacties.