Skip to content

Instantly share code, notes, and snippets.

@kaidesu
Created March 27, 2014 21:29
Show Gist options
  • Save kaidesu/9819416 to your computer and use it in GitHub Desktop.
Save kaidesu/9819416 to your computer and use it in GitHub Desktop.
PHP/MySQL User's Online Script
CREATE TABLE `user_online` (
`session` char(100) NOT NULL default '',
`time` int(11) NOT NULL default '0'
) TYPE=MyISAM;
<?php
session_start();
$session = session_id();
$time = time();
$time_check = $time-600; //SET TIME 10 Minute
$host = "localhost"; // Host name
$username = ""; // Mysql username
$password = ""; // Mysql password
$db_name = "test"; // Database name
$tbl_name = "user_online"; // Table name
// Connect to server and select databse
mysql_connect("$host", "$username", "$password")or die("cannot connect to server");
mysql_select_db("$db_name")or die("cannot select DB");
$sql = "SELECT * FROM $tbl_name WHERE session='$session'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
if ($count == "0") {
$sql1 = "INSERT INTO $tbl_name(session, time) VALUES('$session', '$time')";
$result1 = mysql_query($sql1);
} else {
$sql2 = "UPDATE $tbl_name SET time='$time' WHERE session = '$session'";
$result2 = mysql_query($sql2);
}
$sql3 = "SELECT * FROM $tbl_name";
$result3 = mysql_query($sql3);
$count_user_online = mysql_num_rows($result3);
echo "User online : $count_user_online";
// if over 10 minute, delete session
$sql4 = "DELETE FROM $tbl_name WHERE time<$time_check";
$result4 = mysql_query($sql4);
// Open multiple browser page for result
// Close connection
mysql_close();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment