php实现的在线人员函数库

yipeiwu_com5年前PHP代码库
//增加用户     
function AddUser($username){      
global $db;     
$Ip=getenv('REMOTE_ADDR');     
$Ip1 = getenv('HTTP_X_FORWARDED_FOR');     
if (($Ip1 != "") && ($Ip1 != "unknown")) $Ip=$Ip1;     
$current_time=date("Y-m-d H:i:s");     
$SQL="select user from class_online where user='$username'";      
$res=mysql_query($SQL,$db);      
$row=@mysql_num_rows($res);      
if($row==0) {     
$SQL="insert into class_online (user,ip,lasttime) values('$username','$Ip','$current_time')";      
mysql_query($SQL,$db);     
}     
}     
//更新在线用户名单      
function UpdateMember(){      
global $db;     
$SQL="delete from class_online where UNIX_TIMESTAMP()-UNIX_TIMESTAMP(lasttime)>180"; //3分钟不活动则退出      
//echo $SQL;     
mysql_query($SQL,$db);     
}     
//更新在线状态      
function UpdateOnline($username){      
global $db;     
$current_time=date("Y-m-d H:i:s");;     
$SQL="update class_online set lasttime='$current_time' where user='$username'";      
$res=mysql_query($SQL,$db);      
}      
//删除用户     
function OutOneUser($user){      
global $db;     
$SQL="delete from class_online where user='$user'";      
mysql_query($SQL,$db);      
return true;     
}      
//检查是否在线      
function CheckUser($user){      
global $db;     
$SQL="select user from class_online where user='$user'";      
$res=mysql_query($SQL,$db);      
$row=mysql_num_rows($res);      
if($row>0) return true;      
else return false;      
}      
//取在线名单      
function ReadOnlineName(){      
global $db;      
$SQL="select * from class_online";     
$res=mysql_query($SQL,$db);     
while($row=mysql_fetch_array($res)){      
$result[]=$row[user];      
}      
return $result;      
}      
//********************在线人员函数库***************end


相关文章

PHP的autoload自动加载机制使用说明

在PHP开发过程中,如果希望从外部引入一个class,通常会使用include和require方法,去把定义这个class的文件包含进来,但是这样可能会使得在引用文件的新脚本中,存在大量...

php5.3 废弃函数小结

在php5.3被放弃的函数有: ereg();//直接用mb_ereg代替,或是preg_match代替,但是匹配规则需要用/包括起来 eregi();//preg_match代替,在规...

php日期转时间戳,指定日期转换成时间戳

写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储、处理方便,但是不直观,格式化日期直观,但是处理起来不如Uni...

php实现简单洗牌算法

如下所示:复制代码 代码如下:<?php  /**   * 简单洗牌算法   */  $card_num=54; //牌数  pr...

PHP中去除换行解决办法小结(PHP_EOL)

第一种写法: $content=str_replace("\n","",$content); echo $content; 第二种写法: str_replace("\r\n","",$s...