当前位置: 首页 > 图文教程 > 网络编程 > PHP > 粗略计算在线时间,bug:ip相同

PHP
php4的彩蛋
正则表达式例子:获得某个网页上的所有超裢接
正则表达式例子:在一个字符串中查找另一个字符串
正则表达式例子:将MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式
Pattern Modifiers - 规则表达式的修饰符
PHP4实际应用经验篇(1)
PHP4实际应用经验篇(2)
PHP4实际应用经验篇(3)
PHP4实际应用经验篇(4)
PHP4实际应用经验篇(5)
PHP4实际应用经验篇(6)
PHP中的DOM XML函数
使用php动态生成gif时遇到的问题和解决办法
用PHP连mysql和oracle数据库性能比较
浅谈Windows下 PHP4.0与oracle 8的连接设置
用PHP调用数据库的存贮过程
用php与mysql的电子贺卡程序
挑战最棒的留言本的源码(一)
挑战最棒的留言本的源码(二)
如何实现日期比较,暨实现显示5天内,显示10天内的记录

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 274 ::
收藏到网摘: n/a

<?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','游客') ");
}
?>