当前位置:Gxlcms > PHP教程 > 粗略计算在线时间,bug:ip相同

粗略计算在线时间,bug:ip相同

时间:2021-07-01 10:21:17 帮助过:7人阅读

<?PHP
/*

CREATE TABLE `db_online` (
  `ip` char(20) default NULL,
  `time` char(20) NOT NULL default '',
  `name` char(200) NOT NULL default '游客'
) TYPE=MyISAM

*/

//粗略计算在线时间,bug:ip相同(局域网->外部网)者,只记录一人。不过几率很少

session_start();
//超时时间
$out_time=300;//60*5

$uesr_name=$_SESSION['uesr_name'];

$now=time();
$online="db_online";
$ip=$_SERVER["REMOTE_ADDR"];

mysql_connect("localhost","root","");
mysql_select_db("数据库");
//删除过时用户.
mysql_query("delete from `$online` where  ($now-`time`)>$out_time or `name`='$uesr_name'  or `ip`='$ip' ");

if($uesr_name){
    mysql_query("  INSERT INTO `$online` (`ip`, `time`, `name`) VALUES ('$ip','$now','$uesr_name')  ");
}else{
    mysql_query("  INSERT INTO `$online` (`ip`, `time`, `name`) VALUES ('$ip','$now','游客')  ");
}

?>

人气教程排行