login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Handige scripts > Pageviewlimiet

Pageviewlimiet

Auteur: Tuinstoel - 04 februari 2005 - 11:54 - Gekeurd door: Tuinstoel - Hits: 4105 - Aantal punten: 3.42 (6 stemmen)



Dit is handig als je een website runt waar veel mensen tegelijk online zijn, en je wil de server niet overbelast hebben. Ik gebruik het zelf ook zo ongeveer, om zo de MySQL niet down te krijgen. Zie het codeblok voor meer uitleg over de functie.

Code:
  1. <?
  2. function PageViewLimiet()
  3. {
  4. $kLimiet = 60;
  5. // Aantal pageviews per $kSeconden
  6. $kSeconden = 60;
  7. // Om de X seconden gaan de views weer naar 0
  8.  
  9. if(!isset($_SESSION['clicks']))
  10. {
  11. // Sessie clicks bestaat nog niet, dus aanmaken
  12. $_SESSION['clicks'] = array
  13. (
  14. 'clicks' => 0, // Aantal kliks
  15. 'time' => time() // Tijd wanneer de sessie wordt aangemaakt
  16. );
  17. // Dit allemaal in een array, het kan
  18. // ook apart, maar dit werkt wel net zo handig
  19. }
  20.  
  21. $_SESSION['clicks']['clicks']++;
  22. // Tellertje + 1 doen, elke pageview
  23. if($_SESSION['clicks']['time'] < (time()-$kSeconden))
  24. {
  25. // Als de huidige tijd - $kSeconden de tijd heeft
  26. // gepasseerd wanneer de sessie time is, wordt het
  27. // aantal clicks + de tijd weer naar 0 en naar de
  28. // huidige tijd gezet
  29. $_SESSION['clicks']['clicks'] = 0;
  30. $_SESSION['clicks']['time'] = time();
  31. }
  32. else
  33. {
  34. if($_SESSION['clicks']['clicks'] > $kLimiet)
  35. {
  36. // En hier is het limiet bereikt dan
  37. echo 'Je hebt jouw <b>pageviewlimiet</b> voor deze minuut bereikt!<br />';
  38. echo 'Je moet nog '.($kLimiet - (time() - $_SESSION['clicks']['time'])).' seconden wachten!<br />';
  39. }
  40. }
  41. }
  42. ?>
  43.  
  44. Een eenvoudig kliklimiet, je kunt hem opvragen op pagina's waar het nodig is met PageViewLimiet();
  45. Vergeet dan niet bovenaan de pagina('s) session_start(); te doen, want dit gebruikt sessie's.
  46. Voorbeeld hoe het zou kunnen werken:
  47.  
  48. <?
  49. require_once 'config.php';
  50. // In dit bestand staat dan de functie
  51.  
  52. PageViewLimiet();
  53.  
  54.  
  55. echo 'Welkom op deze pagina.';
  56. ?>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (2)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.025s