<?
//I found this little script on www.zend.com
//it worked for me!
//
//Create a database and name it to: users
//then create table and change the variables for connect to your MySql
/
CREATE TABLE connected (
ip char(15) NOT NULL,
hl timestamp(14),
PRIMARY KEY (ip)
);
/
//Variables for connecting to MySql (change this)
$host="my.sql.com";
$user="mysqluser";
$password="password";
$database="users";
// disconnected timeout (seconds)
$timeout = 60;
// differentiate between two surfers
$ip=getenv("REMOTE_ADDR");
mysql_connect($host,$user,$password);
// remove old connections
$query = "DELETE FROM connected WHERE hl < now()";
$sendquery = mysql_db_query($database,$query);
$query = "SELECT count() FROM connected WHERE IP='$ip'";
$sendquery = mysql_db_query($database,$query);
while ( $result = @mysql_fetch_array($sendquery) ) {
$users = $result["count()"];}
if ($users) {
// is a reload?
$query = "UPDATE connected SET hl=hl + $timeout WHERE ip='$ip'";}
else {
// welcome on board !
$query = "INSERT INTO connected (ip, hl) VALUES ('$ip', now()+ $timeout)";}
$sendquery = mysql_db_query($database,$query);
// most important: connected number
$query = "SELECT count() FROM connected";
$sendquery = mysql_db_query($database,$query);
while ( $result = @mysql_fetch_array($sendquery) ) {
$users = $result["count()"];}
//Print out connected users
echo "Online users <B>$users</B>";
?>