站长网 教程 PHPCMS2008记录用户在线登录时间的方法

PHPCMS2008记录用户在线登录时间的方法

最近找PHPCMS在线时间一直没有找到比较好的解决方案。 因此自己弄了一个,不过还算实用。 方法如下! 1、在phpmyadmin里运行如下SQL语句: ALTER TABLE `phpcms_member_info` ADD `hdendtime` VARCHAR( 20 ) NOT NULL AFTER `lastlogintime`; ALTER TABLE

最近找PHPCMS在线时间一直没有找到比较好的解决方案。

因此自己弄了一个,不过还算实用。

方法如下!

1、在phpmyadmin里运行如下SQL语句:

ALTER TABLE `phpcms_member_info` ADD `hdendtime` VARCHAR( 20 ) NOT NULL AFTER `lastlogintime`;
ALTER TABLE `phpcms_member_info` ADD `linetime` VARCHAR( 20 ) NOT NULL AFTER `lastlogintime`;

2、打开includecommon.inc.php

增加如下代码:

if($_userid){//更新在线时间
$time=TIME;
$ist=$db->get_one("SELECT hdendtime FROM `" .DB_PRE ."member_info` WHERE `userid`=$_userid LIMIT 1");//当前时间
$time2=$time-$ist[‘hdendtime’];
if($time2>60){
$r2 = $db->query("UPDATE `" .DB_PRE ."member_info` SET linetime=linetime+60,hdendtime=$time WHERE `userid`=$_userid");
}
}

主要思路是用户点击任意页面运行此语句,当前时间和最后更新的时间差大于60秒的时候就更增加用户在线60秒,用户不点击的时候就无法统计了,我感觉用户不点击的话也没有统计的意义。

3、打开memberadmin emplatesmember_manage.tpl.php
查找第一个<?=$member[‘username’]?>
在后边加上:

在线:<?=ceil($member[‘linetime’]/60)?>分钟

就可以了,大家看看效果吧,有问题联系我哦。

本文来自网络,不代表站长网立场,转载请注明出处:https://www.zwzz.com.cn/html/video/2021/0525/6073.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部