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

PHP
967 个函式
php注入实例
用libTemplate实现静态网页的生成
做个自己站内搜索引擎
session 的生命周期是多长
用PHP函数解决SQL injection
图形数字验证代码
PHP_Flame(Version:Progress)的原代码
vBulletin Forum 2.3.xx SQL Injection
如何使用PHP中的字符串函数
substr()函数中文版
如何限制访问者的ip(PHPBB的代码)
汉字转化为拼音(php版)
用PHP实现验证码功能
PHP 中的类
怎么使 Mysql 数据同步
开发大型PHP项目的方法
PHP4 与 MySQL 数据库操作函数详解
高亮度显示php源代码
Content-type 的说明

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


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