Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

今日到访 For 4.x

[复制链接]
咕咕 发表于 2005-11-28 12:46:10 | 显示全部楼层 |阅读模式
原作者:cnteacher
修改:muhan
4.0修改:咕咕


1.升级数据库


  1. ALTER TABLE `cdb_members` ADD `logintime` INT(10) DEFAULT '0' NOT NULL,ADD `periodoftime` INT(10) DEFAULT '0' NOT NULL;
复制代码



2.修改include/db_mysql.class.php
查找
  1. function query($sql, $type = '') {
  2.                 $mtime = explode(' ', microtime());
  3.                 $discuz_starttime = $mtime[1] + $mtime[0];

  4.                 $func = $type == 'UNBUFFERED' && @function_exists('mysql_unbuffered_query') ?
  5.                         'mysql_unbuffered_query' : 'mysql_query';
  6.                 if(!($query = $func($sql)) && $type != 'SILENT') {
  7.                         $this->halt('MySQL Query Error', $sql);
  8.                 }
  9.                 $this->querynum++;
  10.                 $mtime = explode(' ', microtime());
  11.                 $this->info .= "<hr>".substr(($mtime[1] + $mtime[0]-$discuz_starttime),0,7).": $sql [$type]";
  12.                  

  13.                 return $query;
  14.         }
复制代码

下面添加
      
  1. function unbuffered_query($sql, $silence = 0) {
  2.                 $func_unbuffered_query = @function_exists('mysql_unbuffered_query') ? 'mysql_unbuffered_query' : 'mysql_query';
  3.                 $query = $func_unbuffered_query($sql);
  4.                 if(!$query && !$silence) {
  5.                         $this->halt('MySQL Query Error', $sql);
  6.                 }
  7.                 $this->querynum++;
  8.                 return $query;
  9.         }
复制代码

3.修改include/common.inc.php
找到
  1. m.email, m.timeoffset,
复制代码

前面添加
  1. m.logintime, m.periodoftime,
复制代码

找到
  1. ?>
复制代码

上面添加
  1. //今日到访 by cnteacher 分时段详细列表 by DyNE
  2. list($thisyear,$thismonth,$thisday,$thishour) = explode(':',gmdate('Y:m:d:H',$timestamp + $timeoffset * 3600));
  3. $todaylogincheck =gmmktime(0,0,0,$thismonth,$thisday,$thisyear) - $timeoffset * 3600;
  4. if ($discuz_user) {
  5.     $lasthour = gmdate('H',$logintime + $timeoffset * 3600);
  6.     if ($logintime < $todaylogincheck) {
  7.         $periodoftime = 1 << $thishour;
  8.         $db->unbuffered_query("UPDATE {$tablepre}members SET logintime='".$timestamp."', periodoftime ='".$periodoftime."' WHERE username='$discuz_user'");
  9.     } elseif ($thishour > $lasthour) {
  10.         $periodoftime = $periodoftime | (1 << $thishour);
  11.         $db->unbuffered_query("UPDATE {$tablepre}members SET logintime='".$timestamp."', periodoftime ='".$periodoftime."' WHERE username='$discuz_user'");
  12.     }
  13. }
  14. //End
复制代码


4.上传附件文件到论坛根目录
5.修改templates/default/header.htm
查找
  1. | <a href="faq.php" >{lang faq}</a>
复制代码

前面添加
  1. | <a href="membertoday.php">今日到访</a>
复制代码

[ 本帖最后由 咕咕 于 2005-12-18 11:58 编辑 ]

评分

1

查看全部评分

爱好者 发表于 2005-11-28 12:49:25 | 显示全部楼层
沙发啊!
回复

使用道具 举报

jinlun721 发表于 2005-11-28 13:10:18 | 显示全部楼层
板凳
回复

使用道具 举报

freddy 发表于 2005-11-28 13:29:12 | 显示全部楼层
这个不错!我喜欢的!
回复

使用道具 举报

nvxsd 发表于 2005-11-28 13:50:53 | 显示全部楼层
就是要这东东!
回复

使用道具 举报

vairt 发表于 2005-11-28 13:54:59 | 显示全部楼层
看看
回复

使用道具 举报

 楼主| 咕咕 发表于 2005-11-28 18:07:39 | 显示全部楼层
自己顶..
回复

使用道具 举报

 楼主| 咕咕 发表于 2005-11-28 23:29:22 | 显示全部楼层
等待整理嘿嘿...!!!!
回复

使用道具 举报

dichli 发表于 2005-11-29 08:14:09 | 显示全部楼层
嗯 这个好!
回复

使用道具 举报

renothing 发表于 2005-11-29 08:15:51 | 显示全部楼层
能不能不涉及数据库而统计呢/?直接调用系统本身的统计
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-5-2 22:33 , Processed in 0.130266 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表