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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[插件] 把在线列表默认为关闭 For 4.0

[复制链接]
MacauNet 发表于 2005-12-14 22:47:08 | 显示全部楼层
原帖由 hklcf 于 2005-12-14 22:30 发表

你明那个500有什么用吗?


老O有發過,就是改這個啦..你去看看
回复

使用道具 举报

 楼主| hklcf 发表于 2005-12-14 22:49:31 | 显示全部楼层
原帖由 MacauNet 于 2005-12-14 22:47 发表


老O有發過,就是改這個啦..你去看看

这只是把显示人数上限定为1,并不是真正的关闭,但效果一样
回复

使用道具 举报

skyter 发表于 2005-12-14 22:51:57 | 显示全部楼层
好象没什么效果
回复

使用道具 举报

 楼主| hklcf 发表于 2005-12-14 22:53:06 | 显示全部楼层
原帖由 skyter 于 2005-12-14 22:51 发表
好象没什么效果

不会吧...放个网址上来给我看看
回复

使用道具 举报

skyter 发表于 2005-12-14 22:56:25 | 显示全部楼层
原帖由 hklcf 于 2005-12-14 22:53 发表

不会吧...放个网址上来给我看看

签名中
回复

使用道具 举报

 楼主| hklcf 发表于 2005-12-14 23:01:40 | 显示全部楼层
原帖由 skyter 于 2005-12-14 22:56 发表

签名中

改了 index.php 没有 ?
改了的话放上来看看吧,还有你的主页有数十次查询...汗
回复

使用道具 举报

skyter 发表于 2005-12-14 23:03:06 | 显示全部楼层
<?php

/*
        [DISCUZ!] index.php - Crossday Discuz! Board index page
        This is NOT a freeware, use is subject to license terms

        Version: 4.0.0
        Web: http://www.comsenz.com
        Copyright: 2001-2005 Comsenz Technology Ltd.
        Last Modified: 2005-3-6 16:18
*/

define('CURSCRIPT', 'index');

require_once './include/common.inc.php';
require_once DISCUZ_ROOT.'./include/forum.func.php';

$discuz_action = 1;

$validdays = $discuz_uid && !empty($groupexpiry) && $groupexpiry >= $timestamp ?
        ceil(($groupexpiry - $timestamp) / 86400) : 0;

if(isset($showoldetails)) {
        switch($showoldetails) {
                case 'no': dsetcookie('onlineindex', 0, 86400 * 365); break;
                case 'yes': dsetcookie('onlineindex', 1, 86400 * 365); break;
        }
} else {
        $showoldetails = false;
}

$currenttime = gmdate($timeformat, $timestamp + $timeoffset * 3600);
$lastvisittime = gmdate("$dateformat $timeformat", $lastvisit + $timeoffset * 3600);

$memberenc = rawurlencode($lastmember);
$newthreads = round(($timestamp - $lastvisit + 600) / 1000) * 1000;

if(empty($gid)) {

        $navigation = $navtitle = '';

        $announcements = '';
        if($_DCACHE['announcements']) {
                $space = '';
                foreach($_DCACHE['announcements'] as $announcement) {
                        if($timestamp >= $announcement['starttime'] && ($timestamp <= $announcement['endtime'] || !$announcement['endtime'])) {
                                $announcements .= $space.'<a href="announcement.php?id='.$announcement['id'].'#'.$announcement['id'].'"><span class="bold">'.$announcement['subject'].'</span> '.
                                        '('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>';
                                $space = '&nbsp; &nbsp; &nbsp; &nbsp;';
                        }
                }
        }
        unset($_DCACHE['announcements']);

        $threads = $posts = $todayposts = 0;
        $forumlist = $catforumlist = $forums = $catforums = $categories = $collapse = array();

        $sql = !empty($accessmasks)        ?
                                "SELECT f.fid, f.fup, f.type, f.name, f.threads, f.posts, f.todayposts, f.lastpost, f.inheritedmod, ff.description, ff.moderators, ff.icon, ff.viewperm, a.allowview FROM {$tablepre}forums f
                                        LEFT JOIN {$tablepre}forumfields ff ON ff.fid=f.fid
                                        LEFT JOIN {$tablepre}access a ON a.uid='$discuz_uid' AND a.fid=f.fid
                                        WHERE f.status='1' ORDER BY f.type, f.displayorder"
                                : "SELECT f.fid, f.fup, f.type, f.name, f.threads, f.posts, f.todayposts, f.lastpost, f.inheritedmod, ff.description, ff.moderators, ff.icon, ff.viewperm FROM {$tablepre}forums f
                                        LEFT JOIN {$tablepre}forumfields ff USING(fid)
                                        WHERE f.status='1' ORDER BY f.type, f.displayorder";

        $query = $db->query($sql);

        while($forum = $db->fetch_array($query)) {
                $forumname[$forum['fid']] = strip_tags($forum['name']);
                if($forum['type'] != 'group') {
                        $threads += $forum['threads'];
                        $posts += $forum['posts'];
                        $todayposts += forumtodayposts($forum);

                        if($forum['type'] != 'sub') {
                                $forums[$forum['fid']] = $forum;
                        } else {
                                if($subforumsindex) {
                                        $forums[$forum['fup']]['subforums'][] = '<a href="forumdisplay.php?fid='.$forum['fid'].'"><u>'.$forum['name'].'</u></a>';
                                }
                                $forums[$forum['fup']]['threads'] += $forum['threads'];
                                $forums[$forum['fup']]['posts'] += $forum['posts'];
                                $forums[$forum['fup']]['todayposts'] += $forum['todayposts'];
                        }
                } else {
                        $forum['moderators'] = moddisplay($forum['moderators'], 'flat');
                        if(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], 'category_'.$forum['fid'].' ') === FALSE) {
                                $forum['collapseimg'] = 'collapsed_no.gif';
                                $collapse['category_'.$forum['fid']] = '';
                        } else {
                                $forum['collapseimg'] = 'collapsed_yes.gif';
                                $collapse['category_'.$forum['fid']] = 'display: none';
                        }
                        $categories[] = $forum;
                }
        }

        if($categories) {
                foreach($categories as $group) {
                        $group_forum = array();
                        foreach($forums as $fid => $forum) {
                                if($forum['fup'] == $group['fid']) {
                                        if(forum($forum)) {
                                                $group_forum[] = $forum;
                                                unset($forums[$fid]);
                                        }
                                } elseif(!$forum['fup'] && $forum['type'] == 'forum') {
                                        $catforums[] = $forum;
                                        unset($forums[$fid]);
                                }
                        }
                        if($group_forum) {
                                $forumlist = array_merge($forumlist, array($group), $group_forum);
                        }
                }
        } else {
                $catforums = $forums;
        }

        foreach($catforums as $forum) {
                if(forum($forum)) {
                        $catforumlist[] = $forum;
                }
        }
        if($catforumlist) {
                $forum = array('fid' => 0, 'type' => 'group', 'name' => $bbname);
                if(strpos($_COOKIE['discuz_collapse'], 'category_0 ') === FALSE) {
                        $forum['collapseimg'] = 'collapsed_no.gif';
                        $collapse['category_0'] = '';
                } else {
                        $forum['collapseimg'] = 'collapsed_yes.gif';
                        $collapse['category_'.$forum['fid']] = 'display: none';
                }
                $forumlist = array_merge($forumlist, array($forum), $catforumlist);
        }

        unset($fid, $forums, $catforums, $catforumlist, $categories, $group, $forum, $group_forum);

        if(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], 'forumlinks ') === FALSE) {
                $linkcollapseimg = 'collapsed_no.gif';
                $collapse['forumlinks'] = '';
        } else {
                $linkcollapseimg = 'collapsed_yes.gif';
                $collapse['forumlinks'] = 'display: none';
        }

        if($whosonlinestatus == 1 || $whosonlinestatus == 3) {
                $whosonlinestatus = 1;

                $onlineinfo = explode("\t", $onlinerecord);
                $detailstatus = ((empty($_DCOOKIE['onlineindex']) && $onlineinfo[0] < 500) || (empty($_DCOOKIE['onlineindex']) || $showoldetails == 'yes')) && $showoldetails != 'no';

                if($detailstatus) {
                        @include language('actions');

                        updatesession();
                        $membercount = $invisiblecount = 0;
                        $whosonline = array();
                        $query = $db->query("SELECT uid, username, groupid, invisible, action, lastactivity, ip1, ip2, ip3, ip4, fid FROM {$tablepre}sessions ORDER BY uid DESC");
                        while($online = $db->fetch_array($query)) {
                                if($online['uid']) {
                                        $membercount++;
                                        if(!$online['invisible']) {
                                                $online['icon'] = isset($_DCACHE['onlinelist'][$online['groupid']]) ? $_DCACHE['onlinelist'][$online['groupid']] : $_DCACHE['onlinelist'][0];
                                        } else {
                                                $invisiblecount++;
                                                continue;
                                        }

                                        $online['fid'] = $online['fid'] ? $forumname[$online['fid']] : 0;
                                        $online['action'] = $actioncode[$online['action']];
                                        $online['lastactivity'] = gmdate($timeformat, $online['lastactivity'] + ($timeoffset * 3600));
                                          //-----------------------显IP开始!
$online['ip'] = $online['ip1'].'.'.$online['ip2'].'.'.$online['ip3'].'.'.$online['ip4'];
        if($allowviewip) {
                require_once $discuz_root.'./include/misc.func.php';
                        $online['iplocation'] = convertip($online['ip']);
                }
//-----------------------显IP结束!
                                        //$whosonline[] = $online;
                                //} else {
                                        //break;
                               //首页中的在线人数中显示游客结束
                              
                             $whosonline[] = $online;
                                } else {

                                       $guestcount++;
                                        $guest['username']= "游客";
                                        $guest['icon']= "online_guest.gif";
                                        $guest['fid'] = $online['fid'] ? $forumname[$online['fid']] : 0;
                                        $guest['action'] = $actioncode[$online['action']];
                                        $guest['lastactivity'] = gmdate($timeformat, $online['lastactivity'] + ($timeoffset * 3600));
                                        $guestonline[]=$guest;
                                }
                        }
                       //首页中的在线人数中显示游客结束
                        //$onlinenum = $db->num_rows($query);
                        //$guestcount = $onlinenum - $membercount;
                        //unset($online);
                             //首页中的在线人数中显示游客结束
                       $onlinenum = $db->num_rows($query);
                        $count=count($guestonline);
                        for($i=0;$i<$count;$i++){
                                $whosonline[]=$guestonline[$i];
                        }
                        $guestcount = $onlinenum - $membercount;
                        unset($online);
                          //首页中的在线人数中显示游客结束
                } else {
                        $query = $db->query("SELECT COUNT(*) FROM {$tablepre}sessions");
                        $onlinenum = $db->result($query, 0);
                }

                if($onlinenum > $onlineinfo[0]) {
                        $db->query("UPDATE {$tablepre}settings SET value='$onlinenum\t$timestamp' WHERE variable='onlinerecord'");
                        require_once DISCUZ_ROOT.'./include/cache.func.php';
                        updatecache('settings');
                        $onlineinfo = array($onlinenum, $timestamp);
                }

                $onlineinfo[1] = gmdate($dateformat, $onlineinfo[1] + ($timeoffset * 3600));
        } else {
                $whosonlinestatus = 0;
        }

        if($discuz_uid && $newpm) {
                require_once DISCUZ_ROOT.'./include/pmprompt.inc.php';
        }

} else {

        require_once DISCUZ_ROOT.'./include/category.inc.php';

}

include template('index');

?>
回复

使用道具 举报

爱好者 发表于 2005-12-14 23:04:09 | 显示全部楼层
顶了!
回复

使用道具 举报

skyter 发表于 2005-12-14 23:05:26 | 显示全部楼层
原帖由 hklcf 于 2005-12-14 23:01 发表

还有你的主页有数十次查询...汗

????那如何解决?
回复

使用道具 举报

踏雪无痕㊣ 发表于 2005-12-14 23:17:44 | 显示全部楼层
有意思哈
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 20:55 , Processed in 0.023236 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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