当前位置: 首页 > 图文教程 > 网络编程 > PHP > 基于数据库的在线人数,日访问量等统计

PHP
动易数据转成dedecms的php程序
PHP中文汉字验证码
收藏的一个php小偷的核心程序
ASP和PHP都是可以删除自身的
PHP+Tidy-完美的XHTML纠错+过滤
PHP实现MVC开发得最简单的方法——模型
相对路径转化成绝对路径
如何提高MYSQL数据库的查询统计速度 select 索引应用
php下的转义字符串
PHP 中英文混合排版中处理字符串常用的函数
Linux下ZendOptimizer的安装与配置方法
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
dede全站URL静态化改造[070414更正]
使用Xdebug调试和优化PHP程序之[1]
PHP与SQL注入攻击[一]
PHP与SQL注入攻击[二]
PHP与SQL注入攻击[三]
PHP和XSS跨站攻击的防范
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口

PHP 中的 基于数据库的在线人数,日访问量等统计


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

可以实现在线人数统计,日访问量统计,月访问量统计。。。。。
<?
$sql = "CREATE TABLE guestinfo(id integer DEFAULT '0' NOT NULL AUTO_INCREMENT,
ipaddress varchar(20),
host varchar(20),
cometime datetime,
refreshtime datetime,
leavetime datetime,
PRIMARY KEY(id),
UNIQUE id(id),
index guestinfo(id)
)";
mysql_query($sql, $connect);
?>
<?
$duration = 300;
$sql = "select * from guestinfo where (leavetime is null or leavetime='') and ( UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(refreshtime))>$duration";
$result=@mysql_query($sql);
while($row=@mysql_fetch_array($result))
{
$id = $row['id'];
$sql = "update guestinfo set leavetime=now() where id='$id'";
mysql_query($sql);
}
$sql = "select * from guestinfo where ipaddress='$REMOTE_ADDR' and (leavetime is null or leavetime='')";
$result = @mysql_query($sql);
if($row=@mysql_fetch_array($result))
{
$id = $row['id'];
$sql="update guestinfo set refreshtime=now() where id='$id'";
mysql_query($sql);
}
else
{
$sql = "insert into guestinfo(ipaddress,host,cometime,refreshtime)
values('$REMOTE_ADDR','$REMOTE_HOST',now(),now())";
mysql_query($sql);
}
$date= mktime(0,0,0,date("m"),date("d"),date("Y"));
$sql = "select count(*) from guestinfo where UNIX_TIMESTAMP(refreshtime)> $date";
$result = mysql_query($sql);
if($result)
{
$row = mysql_fetch_array($result);
$todayaccess = $row["count(*)"];
}
else $todayaccess = 0;
$sql = "select count(*) from guestinfo where leavetime is null or leavetime=''";
$result = mysql_query($sql);
if($result)
{
$row = mysql_fetch_array($result);
$nowonline= $row["count(*)"];
}
else $nowonline = 0;
mysql_close($connect);
?>
include("guest.php");
<head>
<meta http-equiv="Refresh" content=<? echo $duration?>; url=<? echo $PHP_SELF; ?>">
</head>
欢迎来我的网站来灌水,有什么问题,给我留言。