该方法简单实现了一直以来被广泛论讨、较难实现论坛实时在线用户统计的问题。
现在此简述一下原理。
首先建一文件夹tmp,用来储存session用户的SESS文件(正常情况下SESS文件是默认存在系统目录window下的tmp文件夹中);
然后声明:
session_save_path('tmp');
session_start();
function run_online(){
//变量$title :是每一页面名字,即可做为用户所处的当前位置来用;
//变量$web :一个预设的数组变量;
global $web,$title;
global $onliner_num;
$_SESSION['locate']=$title; //确立当前位置
if(!$_SESSION['ip'] || $_SESSION['ip']!=$web['ip']){
$_SESSION['ip']=$web['ip']; //确立用户IP写入SESS文件
}
session_write_close(); //关闭,以便SESS文件可读
$onliner_num['guest']=0; //初始过客在线人数
$onliner_num['area']=0; //初始当前版区在线人数