This is the online statistics part of my multi-user statistics.
Gb_temp table:
Temp1 user ID
Temp2 IP Address
Temp3 online // is marked, because this table is also used for other functions.
Temp4 Logon Time
$ Onlinetime: The longest offline time in minutes
Db_class is a database operation class I have defined.
///////////////////
// Online statistics
$ Db = new db_class;
$ Db-> connect ();
$ Limit_time = time ()-($ onlinetime * 60 );
$ Online_time = time ();
$ Db-> query ("delete from gb_temp where (temp4 <$ limit_time or temp2 = '$ ip') and temp1 =' $ id' and temp3 = 'online '"); // Delete offline users with $ onlinetime minutes
$ Db-> query ("insert into gb_temp (temp1, temp2, temp3, temp4) values ('$ id',' $ ip', 'online', '$ online_time ') ");
$ Onres = $ db-> query ("select count (*) from gb_temp where temp1 = '$ id' and temp3 = 'ons '");
$ Onlineuser = $ db-> fetch_array ($ onres );
$ Onlineuser = $ onlineuser [0];