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

yipeiwu_com6年前PHP代码库
<?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','游客')  ");
}

?>

相关文章

PHP生成制作验证码的简单实例

PHP生成制作验证码的简单实例

看完就会,不会你打我,话不多说、开搞(人狠话不多) 1.0 首先先看代码 <?php header("Content-Type:text/html;Charset=UT...

PHP面相对象中的重载与重写

重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。Overloaded的方法是可以改变返回值的类型。也就是说,重载的返回值类...

Linux下PHP加速器APC的安装与配置笔记

当前我用的是APC-3.1.9 stable ,可以自己到 http://pecl.php.net/package/APC 下载最新版。 1、安装 复制代码 代码如下: wget htt...

PHP接收json 并将接收数据插入数据库的实现代码

最近有一个需求,前端向后台提交json,后台解析并且将提交的值插入数据库中, 难点 1、php解析json(这个不算难点了,网上实例一抓一大把) 2、解析json后,php怎样拿到该拿的...

php基于协程实现异步的方法分析

本文实例讲述了php基于协程实现异步的方法。分享给大家供大家参考,具体如下: github上php的协程大部分是根据这篇文章实现的:http://nikic.github.io/2012...