login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Statistieken > IP-Gebonden Pageviews Teller

IP-Gebonden Pageviews Teller

Auteur: Nrzonline - 05 juli 2006 - 15:56 - Gekeurd door: Gerard - Hits: 8597 - Aantal punten: 4.25 (2 stemmen)




Dit is mijn eerste statistieken script die ik ooit is had uitgewerkt. Nu vernieuwd
en wat beter. Mocht er iemand baat bij hebben, veel plezier er mee ;) Het is niet
zo super professioneel, maar het werkt. Mochten er bugs in zitten of heb je suggesties
dan zijn die natuurlijk altijd welkom.

Script doet het volgende:
- IP gebonden pageviews
- Weergave statistieken
- Bezoeker nummer # van de #
- Totaal pageviews van alle gebruikers bij elkaar
- Berekend persoonlijke pageviews van het totaal in procenten

Benodigde SQL:

CREATE TABLE `statistieken` (
`bezoeker_id` int(11) unsigned NOT NULL auto_increment,
`bezoeker_ip` varchar(20) NOT NULL default '',
`bezoeker_views` int(11) NOT NULL default '1',
`bezoeker_datum` varchar(30) NOT NULL default '',
PRIMARY KEY (`bezoeker_id`)
) TYPE=MyISAM PACK_KEYS=0 AUTO_INCREMENT=1 ;

Code:
  1. <?PHP
  2.  
  3. error_reporting (0); // 0 veranderen in E_ALL om alle fouten weer te geven
  4.  
  5. // Controleren of er een connectie tot stand kan worden gebracht
  6. if (mysql_connect ('localhost', '####', '####') && mysql_select_db ('statistieken')) // Gegevens wijzigen!
  7. {
  8. // Query om te kijken of het ip van de gebruiker al is toegevoegd
  9. $controle_query = mysql_query ( "SELECT COUNT(*)
  10. FROM statistieken
  11. WHERE bezoeker_ip = '" . $_SERVER['REMOTE_ADDR'] . "'")
  12. or die (mysql_error ());
  13.  
  14. if (mysql_result ($controle_query, 0) == 0)
  15. {
  16. // Het toevoegen van het ip aan het database
  17. mysql_query ( "INSERT INTO statistieken
  18. (bezoeker_ip,
  19. bezoeker_datum)
  20. VALUES
  21. ('" . $_SERVER['REMOTE_ADDR'] . "',
  22. '" . date ('d-m-Y') . "')")
  23. or die (mysql_error ());
  24. }
  25. else
  26. {
  27. // Het updaten van de pageviews van de bezoeker
  28. mysql_query ( "UPDATE statistieken
  29. SET bezoeker_views = bezoeker_views+1
  30. WHERE bezoeker_ip = '" . $_SERVER['REMOTE_ADDR'] . "'")
  31. or die (mysql_error ());
  32. }
  33.  
  34. // De gegevens ophalen voor de myslq_fetch_assoc functie
  35. $gegevens_query = mysql_query ( "SELECT *
  36. FROM statistieken
  37. WHERE bezoeker_ip = '" . $_SERVER['REMOTE_ADDR'] . "'")
  38. or die (mysql_error ());
  39.  
  40. // Het totaal aantal pageviews vast stellen
  41. $viewstotaal_query = mysql_query ( "SELECT SUM(bezoeker_views)
  42. FROM statistieken")
  43. or die (mysql_error ());
  44. $viewstotaal = mysql_result ($viewstotaal_query, 0);
  45.  
  46. // Het totaal aantal bezoekers vast stellen
  47. $uniektotaal_query = mysql_query ( "SELECT bezoeker_id
  48. FROM statistieken
  49. ORDER BY bezoeker_id DESC
  50. LIMIT 1")
  51. or die (mysql_error ());
  52. $uniektotaal = mysql_result ($uniektotaal_query, 0);
  53.  
  54. // De statistieken weergeven
  55. while ($assoc_gegevens = mysql_fetch_assoc ($gegevens_query))
  56. {
  57. if (mysql_result ($controle_query, 0) == 0)
  58. {
  59. echo 'welkom, dit is uw eerste keer hier!';
  60. }
  61. else
  62. {
  63. echo 'U heeft ' . $assoc_gegevens['bezoeker_views'] . ' pageviews sinds ' . $assoc_gegevens['bezoeker_datum'] . '<br>';
  64. echo 'U heeft ' . round(($assoc_gegevens['bezoeker_views'] / $viewstotaal * 100), 1) . '% van het totaal: ' . $viewstotaal . '<br>';
  65. echo 'U bent bezoeker ' . $assoc_gegevens['bezoeker_id'] . ' van de ' . $uniektotaal;
  66. }
  67. }
  68. }
  69. // Er is geen connectie met het database, een fout weergeven
  70. else
  71. {
  72. echo 'Er kon geen connectie tot stand worden gebracht met het database!';
  73. }
  74.  
  75. ?>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

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