Попробуй вот такой скриптик
он выводит сколько на сайте человек:
$server = "localhost"; // Your mySQL Server, most cases "localhost"
$db_user = "user"; // Your mySQL Username
$db_pass = "password"; // Your mySQL Password
$database = "database"; // Database Name
$timeoutseconds = 300; // Timeout value in seconds
$timestamp=time();
$timeout=$timestamp-$timeoutseconds;
mysql_pconnect($server, $db_user, $db_pass) or die ("Useronline Database CONNECT Error");
mysql_db_query($database, "INSERT INTO useronline VALUES (\'$timestamp\',\'$REMOTE_ADDR\',\'$PHP_SELF\')") or die("Useronline Database INSERT Error");
mysql_db_query($database, "DELETE FROM useronline WHERE timestamp<$timeout") or die("Useronline Database DELETE Error");
$result=mysql_db_query($database, "SELECT DISTINCT ip FROM useronline WHERE file=\'$PHP_SELF\'") or die("Useronline Database SELECT Error");
$user =mysql_num_rows($result);
mysql_close();
if ($user==1) {echo"$user User online";} else {echo"$user Users online";}
?>
а табличка в базе такого вида:
CREATE TABLE useronline (
timestamp int(15) DEFAULT \'0\' NOT NULL,
ip varchar(40) NOT NULL,
file varchar(100) NOT NULL,
PRIMARY KEY (timestamp),
KEY ip (ip),
KEY file (file)
);
Вот и всё
Но решение далеко от идеала