Scripts

Bezoekers teller

Update: 27-04-2006 Deze bezoekers teller, telt unieke bezoeken aan de hand van ip's en telt ook het totaal aantal bezoeken. De teller bestaat uit 2 functies: bool teller ( ) array visits ( ) Als je de functie teller() aanroept, wordt de teller geupdate, als dit gelukt is krijg je true terug, anders false. Als je het aantal bezoekers wilt weten gebruik je de functie visits() hier mee krijg je een array terug met: * uniek = aantal unieke bezoekers * totaal = aantal totaale bezoeken Het script gebruikt de volgende MySQL tabel: Er wordt van uit gegaan dat er al een database verbinding is.

bezoekers-teller
<?php


	function teller(){
		if(mysql_result(mysql_query("SELECT COUNT(1) FROM teller WHERE ip='".$_SERVER['REMOTE_ADDR']."';"), 0, 0 ) > 0){
			if(mysql_query("UPDATE teller SET aantal=aantal+1 WHERE ip='".$_SERVER['REMOTE_ADDR']."';")){
				return true;
			}
		}else{
			if(mysql_query("INSERT INTO teller SET aantal=1, ip='".$_SERVER['REMOTE_ADDR']."';")){
				return true;
			}
		}
		return false;		
	}
	
	function visits(){
		if($result = mysql_query("SELECT COUNT(1) as uniek, SUM(aantal) as totaal FROM teller")){
			return mysql_fetch_assoc($result);
		}else{
			return array('uniek' => 0, 'totaal' => 0);
		}
	}

?>

[b]Voorbeeld:[/b]

Het volgende sctipt:
<?php

echo "<pre>";
print_r(visits());
echo "</pre>";

teller();

echo "<pre>";
print_r(visits());
echo "</pre>";
?>

Zou deze output kunnen opleveren:
[code]Array
(
    [uniek] => 10
    [totaal] => 37
)

Array
(
    [uniek] => 10
    [totaal] => 38
)[/code]

Reacties

0
Nog geen reacties.