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

PHP
PHP程序员的优化调试技术和技巧
PHP实现简单线性回归之数学库的重要性
用PHP读取和编写XML DOM
PHP实现简单线性回归之数据研究工具
在PHP中开发XML应用程序之基础篇
PHP加密文本文件并限制特定页面的存取
PHP强制对象类型之instanceof操作符
通过PHP和Sajax使用Ajax之JavaScript
WAP与PHP程序设计之基础篇
PHP5 OOP编程之代理与定制异常
PHP5 OOP编程中的代理与异常定制
PHP+MySQL应用中使用XOR运算加密算法
使用PHP和AJAX的XML编程
利用PHP+JavaScript打造AJAX搜索窗
结合AJAX进行PHP开发之入门
结合AJAX的PHP开发之后退、前进和刷新
用PHP控制您的浏览器cache
五个常见 PHP 数据库问题
深入探讨PHP中的内存管理问题
用PHP构建一个简易监视引擎

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 340 ::
收藏到网摘: 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','游客') ");
}
?>