www.gusucode.com > ShopEx481 & PHPWind 整合版码程序 > bbs/index.php
<?php define('SCR','index'); $wind_in = 'hm'; require_once('global.php'); if ($db_setindex && strpos($_SERVER['REQUEST_URI'],'/index')===false) { require_once(R_P.'home.php'); } include_once(D_P.'data/bbscache/cache_index.php'); include_once(D_P.'data/bbscache/forum_cache.php'); $ajaxlogin = false; $sqlwhere = $notice = $index_whosonline = $qcheck = ''; if ($groupid!='guest') { require_once(R_P.'require/showimg.php'); list($faceurl) = showfacedesign($winddb['icon'],1); $lastlodate = get_date($winddb['lastvisit'],'Y-m-d'); $level = $ltitle[$groupid]; } else { if ($db_question) { list(,$qcheck) = explode("\t",$db_qcheck); if ($qcheck) { $qkey = array_rand($db_question); } } if ($db_pptifopen || !($db_ajax & 16)) { $actionurl = 'action="login.php"'; } else { $ajaxlogin = true; $actionurl = 'action="pw_ajax.php?action=login" onsubmit="return ajax_login(this);"'; } } unset($lneed,$lpic); $cateid = (int)GetGP('cateid'); $forumdb = $catedb = $showsub = $noticedb = array();//初始化数组 if ($db_forumdir) { require_once(R_P.'require/dirname.php'); } elseif ($cateid>0) { $catestyle = $forum[$cateid]['style']; if ($catestyle && file_exists(D_P."data/style/$catestyle.php")) { $skin = $catestyle; } $metakeyword = strip_tags($forum[$cateid]['name']); $subject = $metakeyword.' - '; $db_metakeyword = $metakeyword; $sqlwhere = "AND (f.fid='$cateid' OR f.fup='$cateid')"; } if (!$db_showcms) $sqlwhere .= " AND f.cms!='1'"; require_once(R_P.'require/header.php'); //公告部分 foreach ($notice_A as $value) { if ($value['startdate']<=$timestamp && (!$value['enddate'] || $value['enddate']>=$timestamp)) { $value['startdate'] = get_date($value['startdate'],'y-m-d'); !$value['url'] && $value['url'] = "notice.php#$value[aid]"; $noticedb[$value['aid']] = array('url' => $value['url'],'subject' => $value['subject'],'startdate' => $value['startdate']); } } $notice_A = $noticedb; $topics = $article = $tposts = $c_htm = 0; $newpic = (int)GetCookie('newpic'); $query = $db->query("SELECT f.fid,f.childid,f.fup,f.logo,f.descrip,f.forumadmin,f.across,f.allowhtm,f.password,f.allowvisit,f.showsub,fd.tpost,fd.topic,fd.article,fd.subtopic,fd.top1,fd.lastpost FROM pw_forums f LEFT JOIN pw_forumdata fd USING(fid) WHERE f.ifsub='0' $sqlwhere ORDER BY f.vieworder"); while ($forums = $db->fetch_array($query)) { $forums['name'] = $forum[$forums['fid']]['name']; $forums['type'] = $forum[$forums['fid']]['type']; if ($forums['type']==='category') { $forums['deploy_img'] = 'fold'; $forums['tbody_style'] = $forums['admin'] = ''; if (strpos($_COOKIE['deploy'],"\t".$forums['fid']."\t")!==false) { $forums['deploy_img'] = 'open'; $forums['tbody_style'] = 'none'; } if ($forums['forumadmin']) { $forumadmin = explode(',',$forums['forumadmin']); foreach ($forumadmin as $key => $value) { if ($value) { if ($key==10) { $forums['admin'] .= '...'; break; } $forums['admin'] .= '<a href="profile.php?action=show&username='.rawurlencode($value)."\" class=\"cfont\">$value</a> "; } } } $catedb[] = array('fid' => $forums['fid'],'across' => $forums['across'],'name' => $forums['name'],'admin' => $forums['admin'],'tbody_style' => $forums['tbody_style'],'deploy_img' => $forums['deploy_img']); } elseif ($forums['type']==='forum') { if ($forums['showsub'] && $forums['childid']) { $showsub[$forums['fid']] = ''; } $forums['topics'] = $forums['topic']+$forums['subtopic']; if ($db_topped) { $forums['topics'] += $forums['top1']; $forums['article'] += $forums['top1']; } $article += $forums['article']; $topics += $forums['topics']; $tposts += $forums['tpost']; $forums['au'] = $forums['admin'] = ''; if (!$forums['password'] && (!$forums['allowvisit'] || allowcheck($forums['allowvisit'],$groupid,$winddb['groups'],$forums['fid'],$winddb['visit']))) { list($forums['t'],$forums['au'],$forums['newtitle'],$forums['ft']) = explode("\t",$forums['lastpost']); $forums['pic'] = $newpic<$forums['newtitle'] && ($forums['newtitle']+$db_newtime>$timestamp) ? 'new' : 'old'; $forums['newtitle'] = get_date($forums['newtitle']); $forums['t'] = substrs($forums['t'],26); } elseif ($forum[$forums['fid']]['f_type']==='hidden' && $groupid!=3) { if($forums['password'] && allowcheck($forums['allowvisit'],$groupid,$winddb['groups'],$forums['fid'],$winddb['visit'])){ $forums['pic'] = 'lock'; }else{ continue; } } else { $forums['pic'] = 'lock'; } $forums['allowhtm']==1 && $c_htm=1; if ($db_indexfmlogo==1 && file_exists("$imgdir/$stylepath/forumlogo/$forums[fid].gif")) { $forums['logo'] = "$imgpath/$stylepath/forumlogo/$forums[fid].gif"; } elseif ($db_indexfmlogo!=2) { $forums['logo'] = ''; } if ($forums['forumadmin']) { $forumadmin = explode(',',$forums['forumadmin']); foreach ($forumadmin as $value) { if ($value) { if (!$db_adminshow) { $forums['admin'] .= '<a href="profile.php?action=show&username='.rawurlencode($value)."\">$value</a> "; } else { $forums['admin'] .= "<option value=\"$value\">$value</option>"; } } } } $forumdb[$forums['fup']][] = array('fid' => $forums['fid'],'name' => $forums['name'],'topics' => $forums['topics'],'article' => $forums['article'],'tpost' => $forums['tpost'],'admin' => $forums['admin'],'pic' => $forums['pic'],'logo' => $forums['logo'],'descrip' => $forums['descrip'],'au' => $forums['au'],'ft' => $forums['ft'],'t' => $forums['t'],'newtitle' => $forums['newtitle']); } } $db->free_result($query); // View sub if(!empty($showsub)){ foreach ($forum as $value) { if (isset($showsub[$value['fup']]) && $value['f_type']!='hidden') { $showsub[$value['fup']] .= ($showsub[$value['fup']] ? ' | ' : '')."<a href=\"thread.php?fid=$value[fid]\">$value[name]</a>"; } } } unset($forums,$forum); // Share union if ($db_indexmqshare && $sharelink[1]) { $sharelink[1] = "<marquee scrolldelay=\"100\" scrollamount=\"4\" onmouseout=\"if (document.all!=null){this.start()}\" onmouseover=\"if (document.all!=null){this.stop()}\" behavior=\"alternate\">$sharelink[1]</marquee>"; } if (strpos($_COOKIE['deploy'],"\tinfo\t")!==false) { $cate_img = 'open'; $cate_info = 'none'; } else { $cate_img = 'fold'; $cate_info = ''; } // online users Update_ol(); if (!$db_online && file_exists(D_P.'data/bbscache/olcache.php')) { include_once(D_P.'data/bbscache/olcache.php'); } $online = ''; if (GetGP('online')) { $online = Char_cv(GetGP('online')); } elseif (GetCookie('online')) { $online = GetCookie('online'); } if ($online=='yes' || $db_indexonline && $online!='no') { if (!$db_online && $guestinbbs+$userinbbs>2000 && !CkInArray($windid,$manager)) { $online = 'no'; } else { include_once Pcv(R_P."require/online_$db_online.php"); } } elseif ($db_online) { $userinbbs = $guestinbbs = 0; $query = $db->query("SELECT uid!=0 as ifuser,COUNT(*) AS count FROM pw_online GROUP BY uid!='0'"); while($rt = $db->fetch_array($query)){ if($rt['ifuser']) $userinbbs=$rt['count']; else $guestinbbs=$rt['count']; } } Cookie('online',$online); $usertotal = $guestinbbs+$userinbbs; $showgroup = $db_showgroup ? explode(',',$db_showgroup) : array(); @extract($db->get_one("SELECT * FROM pw_bbsinfo WHERE id=1")); $rawnewuser = rawurlencode($newmember); if ($tdtcontrol!=$tdtime) { if ($db_hostweb == 1 && !$cateid && $groupid != 'guest') { $db->update("UPDATE pw_bbsinfo SET yposts='$tposts', tdtcontrol='$tdtime' WHERE id=1"); $db->update("UPDATE pw_forumdata SET tpost=0 WHERE tpost<>'0'"); } } // update posts hits if($c_htm || $db_hithour){ $db_hithour==0 && $db_hithour=4; $hit_wtime=$hit_control*$db_hithour; if ($hit_wtime>24) $hit_wtime=0; $hitsize = @filesize(D_P.'data/bbscache/hits.txt'); if (($timestamp-$hit_tdtime)>$hit_wtime*3600 || $hitsize>1024) { require_once(R_P.'require/hitupdate.php'); } } if ($higholnum<$usertotal) { $db->update("UPDATE pw_bbsinfo SET higholnum='$usertotal',higholtime='$timestamp' WHERE id=1"); $higholnum = $usertotal; } if ($hposts<$tposts) { $db->update("UPDATE pw_bbsinfo SET hposts='$tposts' WHERE id=1"); $hposts = $tposts; } $mostinbbstime = get_date($higholtime); if ($db_onlinelmt!=0 && $usertotal>=$db_onlinelmt && !$ol_offset) { Cookie('ol_offset','',0); Showmsg('most_online'); } list($db_moneyname,$db_moneyunit,$db_rvrcname,$db_rvrcunit,$db_creditname,$db_creditunit)=explode("\t",$db_credits); if ($plantime && $timestamp>$plantime) { require_once(R_P.'require/task.php'); } // update birth day $brithcache = ''; if ($db_indexshowbirth) { require_once(R_P.'require/birth.php'); } //if($db_newinfoifopen){ // @include_once(D_P.'data/bbscache/newinfo_config.php'); // if($nf_order['dig'] && (!$nf_newinfodb['dig'] || $timestamp-$nf_digtime > 86400)){ // require_once(R_P.'require/newinfo.php'); // $nf_newinfodb['dig']=updatedigpost(); // } //} require_once PrintEot('index'); $db_newinfoifopen && require_once(R_P."require/newinfo.php"); footer(); ?>