我的discuz.php,
- <?php
- /*
- [Discuz!] (C)2001-2006 Comsenz Inc.
- This is NOT a freeware, use is subject to license terms
- $RCSfile: discuz.php,v $
- $Revision: 1.6.2.2 $
- $Date: 2006/07/17 07:50:17 $
- */
- 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;
- $navigation = $navtitle = '';
- $searchboxstatus = substr(sprintf('%03b', $qihoo_searchbox), -1, 1);
- $keywordlist = isset($qihoo_links['keywords']) ? $qihoo_links['keywords'] : '';
- $topiclist = isset($qihoo_links['topics']) ? $qihoo_links['topics'] : '';
- if($qihoo_maxtopics) {
- $customtopics = '';
- foreach(explode("\t", isset($_DCOOKIE['customkw']) ? $_DCOOKIE['customkw'] : '') as $topic) {
- $topic = dhtmlspecialchars(trim(stripslashes($topic)));
- $customtopics .= '<a href="topic.php?keyword='.rawurlencode($topic).'" target="_blank">'.$topic.'</a> ';
- }
- }
- $catlist = $forumlist = $sublist = array();
- $threads = $posts = $todayposts = $fids = 0;
- if(empty($gid)) {
- $announcements = $space = '';
- if($_DCACHE['announcements']) {
- foreach($_DCACHE['announcements'] as $announcement) {
- if(empty($announcement['redirect'])) {
- $announcements .= $space.'<a href="announcement.php?id='.$announcement['id'].'#'.$announcement['id'].'"><span class="bold">'.$announcement['subject'].'</span> '.
- '('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>';
- } else {
- $announcements .= $space.'<a href="'.$announcement['message'].'" target="_bland"><span class="bold">'.$announcement['subject'].'</span> '.
- '('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>';
- }
- $space = ' ';
- }
- }
- unset($_DCACHE['announcements']);
- $threads = $posts = $todayposts = 0;
- $sql = !empty($accessmasks) ?
- "SELECT f.fid, f.fup, f.type, f.name, f.threads, f.posts, f.todayposts, f.lastpost, f.inheritedmod, f.forumcolumns, 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, f.forumcolumns, 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 += $forum['todayposts'];
- if($forum['type'] == 'forum') {
- if(forum($forum)) {
- $catlist[$forum['fup']]['forums'][] = $forum['fid'];
- $forum['orderid'] = $catlist[$forum['fup']]['forumscount']++;
- $forum['subforums'] = '';
- $forumlist[$forum['fid']] = $forum;
- }
- } elseif(isset($forumlist[$forum['fup']])) {
- $forumlist[$forum['fup']]['threads'] += $forum['threads'];
- $forumlist[$forum['fup']]['posts'] += $forum['posts'];
- $forumlist[$forum['fup']]['todayposts'] += $forum['todayposts'];
- if($subforumsindex && $forumlist[$forum['fup']]['permission'] == 2) {
- $forumlist[$forum['fup']]['subforums'] .= '<a href="forumdisplay.php?fid='.$forum['fid'].'"><u>'.$forum['name'].'</u></a> ';
- }
- }
- } else {
- 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';
- }
- if($forum['moderators']) {
- $forum['moderators'] = moddisplay($forum['moderators'], 'flat');
- }
- $forum['forumscount'] = 0;
- $catlist[$forum['fid']] = $forum;
- }
- }
- foreach($catlist as $catid => $category) {
- if($catlist[$catid]['forumscount'] && $category['forumcolumns']) {
- $catlist[$catid]['forumcolwidth'] = floor(100 / $category['forumcolumns']).'%';
- $catlist[$catid]['endrows'] = '';
- if($colspan = $category['forumscount'] % $category['forumcolumns']) {
- while(($category['forumcolumns'] - $colspan) > 0) {
- $catlist[$catid]['endrows'] .= '<td></td>';
- $colspan ++;
- }
- $catlist[$catid]['endrows'] .= '</tr>';
- }
- } elseif(empty($category['forumscount'])) {
- unset($catlist[$catid]);
- }
- }
- if(isset($catlist[0]) && $catlist[0]['forumscount']) {
- $catlist[0]['fid'] = 0;
- $catlist[0]['type'] = 'group';
- $catlist[0]['name'] = $bbname;
- $catlist[0]['collapseimg'] = 'collapsed_no.gif';
- } else {
- unset($catlist[0]);
- }
- foreach(array('forumlinks', 'birthdays') as $key) {
- if(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], $key.' ') === FALSE) {
- $collapseimg[$key] = 'collapsed_no.gif';
- $collapse[$key] = '';
- } else {
- $collapseimg[$key] = 'collapsed_yes.gif';
- $collapse[$key] = '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();
- $onlinenum = $membercount = $invisiblecount = 0;
- $whosonline = array();
- $groupids = array_keys($_DCACHE['onlinelist']);
- array_shift($groupids);
- $groupids = implode(',',$groupids);
- if($maxonlinelist) {
- if($db->version() < '4.0.0') {
- $query = $db->query("SELECT uid, ip1, ip2, ip3, ip4, username, groupid, invisible, action, lastactivity, fid FROM {$tablepre}sessions WHERE groupid IN (".$groupids.") ORDER BY uid DESC LIMIT ".$maxonlinelist);
- $onlinenum = $db->result($db->query("SELECT COUNT(*) FROM {$tablepre}sessions"), 0);
- if($onlinenum > $maxonlinelist) {
- $membercount = $db->result($db->query("SELECT COUNT(*) FROM {$tablepre}sessions WHERE uid <> '0'"), 0);
- $invisiblecount = $db->result($db->query("SELECT COUNT(*) FROM {$tablepre}sessions WHERE invisible = '1'"), 0);
- }
- } else {
- $query = $db->query("SELECT SQL_CALC_FOUND_ROWS uid, username, groupid, invisible, action, lastactivity, fid FROM {$tablepre}sessions WHERE groupid IN (".$groupids.") ORDER BY uid DESC LIMIT ".$maxonlinelist);
- $onlinenum = $db->result($db->query("SELECT FOUND_ROWS()"), 0);
- if($onlinenum > $maxonlinelist) {
- $membercount = $db->result($db->query("SELECT COUNT(*) FROM {$tablepre}sessions WHERE uid <> '0'"), 0);
- $invisiblecount = $db->result($db->query("SELECT COUNT(*) FROM {$tablepre}sessions WHERE invisible = '1'"), 0);
- }
- }
- } else {
- $query = $db->query("SELECT uid, ip1, ip2, ip3, ip4, username, groupid, invisible, action, lastactivity, fid FROM {$tablepre}sessions ORDER BY uid DESC");
- $onlinenum = $db->num_rows($query);
- }
- while($online = $db->fetch_array($query)) {
- if($online['uid']) {
- if(!$maxonlinelist || $maxonlinelist && $onlinenum <= $maxonlinelist) $membercount++;
- if(!$online['invisible']) {
- $online['icon'] = isset($_DCACHE['onlinelist'][$online['groupid']]) ? $_DCACHE['onlinelist'][$online['groupid']] : $_DCACHE['onlinelist'][0];
- } else {
- if(!$maxonlinelist || $maxonlinelist && $onlinenum <= $maxonlinelist) $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 && !($adminid == 2 && $member['adminid'] == 1) && !($adminid == 3 && ($member['adminid'] == 1 || $member['adminid'] == 2))) {
- require_once DISCUZ_ROOT.'./include/misc.func.php';
- $online['iplocation'] = convertip($online['ip']);
- } else {
- $allowviewip = 0;
- }
- ////////////////////////////////显示ip
- //////////////////浏览器
- if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 6.0")) {
- $visitor_browser = "Internet Explorer 6.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.5")) {
- $visitor_browser = "Internet Explorer 5.5";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.0")) {
- $visitor_browser = "Internet Explorer 5.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 4.01")) {
- $visitor_browser = "Internet Explorer 4.01";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NetCaptor")) {
- $visitor_browser = "NetCaptor";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Netscape")) {
- $visitor_browser = "Netscape";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Lynx")) {
- $visitor_browser = "Lynx";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Opera")) {
- $visitor_browser = "Opera";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Konqueror")) {
- $visitor_browser = "Konqueror";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mozilla/5.0")) {
- $visitor_browser = "Mozilla";
- } else {
- $visitor_browser = "其它";
- }
- //////////////////浏览器
- //////////////////操作系统
- if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5.1")) {
- $visitor_os = "Windows XP";
- }elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5")) {
- $visitor_os = "Windows 2000";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "4.9")) {
- $visitor_os = "Windows ME";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 4")) {
- $visitor_os = "Windows NT 4.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "98")) {
- $visitor_os = "Windows 98";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "95")) {
- $visitor_os = "Windows 95";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mac")) {
- $visitor_os = "Mac";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Linux")) {
- $visitor_os = "Linux";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Unix")) {
- $visitor_os = "Unix";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "FreeBSD")) {
- $visitor_os = "FreeBSD";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "SunOS")) {
- $visitor_os = "SunOS";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "BeOS")) {
- $visitor_os = "BeOS";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "OS/2")) {
- $visitor_os = "OS/2";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "PC")) {
- $visitor_os = "Macintosh";
- }elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "AIX")) {
- $visitor_os = "AIX";
- } else {
- $visitor_os = "其他";
- }
- //////////////////操作系统
- $whosonline[] = $online;
- } else {
- if(isset($_DCACHE['onlinelist'][7])) {
- $online['icon'] = $_DCACHE['onlinelist'][7];
- $online['username'] = 'Guest';
- $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 && !($adminid == 2 && $member['adminid'] == 1) && !($adminid == 3 && ($member['adminid'] == 1 || $member['adminid'] == 2))) {
- require_once DISCUZ_ROOT.'./include/misc.func.php';
- $online['iplocation'] = convertip($online['ip']);
- } else {
- $allowviewip = 0;
- }
- ////////////////////////////////显示ip
- //////////////////浏览器
- if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 6.0")) {
- $visitor_browser = "Internet Explorer 6.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.5")) {
- $visitor_browser = "Internet Explorer 5.5";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 5.0")) {
- $visitor_browser = "Internet Explorer 5.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "MSIE 4.01")) {
- $visitor_browser = "Internet Explorer 4.01";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NetCaptor")) {
- $visitor_browser = "NetCaptor";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Netscape")) {
- $visitor_browser = "Netscape";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Lynx")) {
- $visitor_browser = "Lynx";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Opera")) {
- $visitor_browser = "Opera";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Konqueror")) {
- $visitor_browser = "Konqueror";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mozilla/5.0")) {
- $visitor_browser = "Mozilla";
- } else {
- $visitor_browser = "其它";
- }
- //////////////////浏览器
- //////////////////操作系统
- if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5.1")) {
- $visitor_os = "Windows XP";
- }elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 5")) {
- $visitor_os = "Windows 2000";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "4.9")) {
- $visitor_os = "Windows ME";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "NT 4")) {
- $visitor_os = "Windows NT 4.0";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "98")) {
- $visitor_os = "Windows 98";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "95")) {
- $visitor_os = "Windows 95";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mac")) {
- $visitor_os = "Mac";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Linux")) {
- $visitor_os = "Linux";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Unix")) {
- $visitor_os = "Unix";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "FreeBSD")) {
- $visitor_os = "FreeBSD";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "SunOS")) {
- $visitor_os = "SunOS";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "BeOS")) {
- $visitor_os = "BeOS";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "OS/2")) {
- $visitor_os = "OS/2";
- } elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "PC")) {
- $visitor_os = "Macintosh";
- }elseif(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "AIX")) {
- $visitor_os = "AIX";
- } else {
- $visitor_os = "其他";
- }
- //////////////////操作系统
- $whosonline[] = $online;
- }
- }
- }
- $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(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], 'birthdays ') === FALSE) {
- $collapse['birthdays'] = '';
- $collapseimg['birthdays'] = 'collapsed_no.gif';
- } else {
- $collapse['birthdays'] = 'display:none';
- $collapseimg['birthdays'] = 'collapsed_yes.gif';
- }
- if(!isset($_COOKIE['discuz_collapse']) || strpos($_COOKIE['discuz_collapse'], 'supe_updateusers ') === FALSE) {
- $collapse['supe_updateusers'] = '';
- $collapseimg['supe_updateusers'] = 'collapsed_no.gif';
- } else {
- $collapse['supe_updateusers'] = 'display:none';
- $collapseimg['supe_updateusers'] = 'collapsed_yes.gif';
- }
- if($discuz_uid && $newpm) {
- require_once DISCUZ_ROOT.'./include/pmprompt.inc.php';
- }
- } else {
- require_once DISCUZ_ROOT.'./include/category.inc.php';
- }
- $malenum = $femalenum = $nofmnum = 0;
- $query = $db->query("SELECT gender FROM {$tablepre}members");
- while($chk = $db->fetch_array($query)) {
- if($chk['gender'] == '1') {
- $malenum++;
- } else if($chk['gender'] == '2') {
- $femalenum++;
- } else {
- $nofmnum++;
- }
- }
- $boynum = $girlnum = $nosexnum = 0;
- $query = $db->query("SELECT s.*, m.gender FROM {$tablepre}sessions s LEFT JOIN {$tablepre}members m on s.uid=m.uid");
- while($chk = $db->fetch_array($query)) {
- $onlineg = $chk['gender'];
- if($chk['gender'] == '1') {
- $boynum++;
- } else if($chk['gender'] == '2') {
- $girlnum++;
- } else {
- $nosexnum++;
- }
- }
- if($onlineg == '1') {
- $og = '帅哥';
- } else if($onlineg == '2') {
- $girlnum++;
- $og='美女';
- } else {
- $og='人妖';
- $nosexnum++;
- }
- include template('discuz');
- ?>
复制代码 |