very good
Thanks for sharing. very useful ;)
CREATE TABLE `online_users` ( `session_id` CHAR(150) NOT NULL, `last_activity` INT(11) NOT NULL DEFAULT '0' );
<?php /* * Author : Reza Ramezanpour <[email protected]> * Website: http://softafzar.net */ class SA_USERSONLINE { protected $DB_HOST = DB_HOST; protected $DB_NAME = DB_NAME; protected $DB_USER = DB_USER; protected $DB_PWD = DB_PWD; protected $session_id = null; protected $time = null; protected $timeout = 15; protected $link = null; protected $stmt = null; function __construct () { $this->DB_PWD, $this->DB_NAME); } /** * Gets current online users */ function get_online_users () { $this->delete_update_onlineusers(); $this->insert_onlineusers(); 'SELECT session_id FROM online_users'); } private function already_registred () { "SELECT session_id FROM online_users WHERE session_id='$this->session_id'"); return false; return true; } private function insert_onlineusers () { if (! $this->already_registred()) { "INSERT INTO online_users VALUES('$this->session_id',$this->time)"); } } private function delete_update_onlineusers () { "DELETE FROM online_users WHERE last_activity<=$timeout"); "UPDATE online_users SET last_activity=$this->time WHERE session_id='$this->session_id'"); } /** * Set timeout in minutes. * * @param int $timeout */ function set_timeout ($timeout) { $this->timeout = ((int) $timeout); } } ?>
$usersOnline = new SA_USERSONLINE(); echo 'Online users: ', $usersOnline->get_online_users();
$usersOnline->set_timeout(15);
NOTE: If database connection is already established, You should remove lines 34 and 35:
$this->DB_PWD, $this->DB_NAME);
Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. After downloading it, you will need a program like Winzip to decompress it.
Virus note: All files are scanned once-a-day by SourceCodester.com for viruses, but new viruses come out every day, so no prevention program can catch 100% of them.
FOR YOUR OWN SAFETY, PLEASE:
1. Re-scan downloaded files using your personal virus checker before using it.
2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.