PHP
·
发表于 5年以前
·
阅读量:8414
<?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','游客') ");
}
?>