www.gusucode.com > ShopEx481 & PHPWind 整合版码程序 > bbs/simple/mod_read.php
<?php !function_exists('readover') && exit('Forbidden'); require_once(R_P.'require/forum.php'); require_once(R_P.'require/bbscode.php'); (!is_numeric($page) || $page < 1) && $page=1; if($page>1){ $S_sql = $J_sql = ''; }else{ !$page && $page = 1; $start_limit = 0; $pw_tmsgs = GetTtable($tid); $S_sql = ',tm.*'; $J_sql = "LEFT JOIN $pw_tmsgs tm ON t.tid=tm.tid"; } $read = $db->get_one("SELECT t.*,m.groupid $S_sql FROM pw_threads t LEFT JOIN pw_members m ON t.authorid=m.uid $J_sql WHERE t.tid='$tid'"); if(!$read){ Showmsg('illegal_tid'); } $pw_posts = GetPtable($read['ptable']); $fid=$read['fid']; $foruminfo = $db->get_one("SELECT * FROM pw_forums f LEFT JOIN pw_forumsextra fe USING(fid) WHERE f.fid='$fid'"); $forumset = unserialize($foruminfo['forumset']); if(!$foruminfo){ Showmsg('data_error'); } wind_forumcheck($foruminfo); if ($groupid != 3 && !$foruminfo['allowvisit'] && admincheck($foruminfo['forumadmin'],$foruminfo['fupadmin'],$windid)){ list($db_moneyname,,$db_rvrcname,,$db_creditname,)=explode("\t",$db_credits); forum_creditcheck(); } $subject=$read['subject']; $forumname = strip_tags($forum[$fid]['name']); if(!$foruminfo['allowvisit'] && $gp_allowread==0 && $_COOKIE){ Showmsg('read_group_right'); } if(CkInArray($windid,$manager)){ $admincheck=1; } elseif(admincheck($foruminfo['forumadmin'],$foruminfo['fupadmin'],$windid)){ $admincheck=1; } else{ $admincheck=0; } !$windid && $admincheck=0; $db_readperpage=50;/*perpage*/ $count= $read['replies']+1; if ($count%$db_readperpage==0){ $numofpage=$count/$db_readperpage; } else{ $numofpage=floor($count/$db_readperpage)+1; } if ($page>$numofpage){ $page=$numofpage; } Update_ol(); $readdb=array(); if($page==1){ $readdb[]=viewread($read,0); } $pages=PageDiv($count,$page,$numofpage,"{$DIR}t$tid"); if($read['ifcheck']==0 && $foruminfo['f_check']){ Showmsg('read_check'); } if ($read['locked']%3==2 && !$admincheck && !$SYSTEM['viewclose']){ Showmsg('read_locked'); } if(!$db_hithour){ $db->update("UPDATE pw_threads SET hits=hits+1 WHERE tid='$tid'"); } else{ writeover(D_P."data/bbscache/hits.txt",$tid."\t",'ab'); } if($read['replies']>0){ $start_limit=($page-1)*$db_readperpage; if($page==1){ $readnum=$db_readperpage-1; } else{ $readnum=$db_readperpage; $start_limit-=1; } $query = $db->query("SELECT p.*,m.groupid FROM $pw_posts p LEFT JOIN pw_members m ON p.authorid=m.uid WHERE p.tid='$tid' AND p.ifcheck='1' ORDER BY p.postdate LIMIT $start_limit, $readnum"); $start_limit++; while($read=$db->fetch_array($query)){ $readdb[]=viewread($read,$start_limit); $start_limit++; } $db->free_result($query); } function viewread($read,$start_limit){ global $SYSTEM,$groupid,$admincheck,$attach_url,$attachper,$winduid,$tablecolor,$tpc_author,$tpc_buy,$count,$timestamp,$db_onlinetime,$attachpath,$gp_allowloadrvrc,$readcolorone,$readcolortwo,$lpic,$ltitle,$imgpath,$db_ipfrom,$db_showonline,$stylepath,$db_windpost,$db_windpic,$db_signwindcode,$fid,$tid,$pid,$pic_a,$db_shield,$db_wordsfb; $tpc_buy=$read['buy']; $tpc_author=$read['author']; $read['ifsign']<2 && $read['content']=str_replace("\n","<br>",$read['content']); $read['postdate']=get_date($read['postdate']); if($read['ifshield']){ $read['subject'] = $groupid=='3' ? shield($read['ifshield']=='2' ? 'shield_del_title' : 'shield_title') : ''; $groupid!='3' && $read['content'] = shield($read['ifshield']=='1' ? 'shield_article' : 'shield_del_article'); }elseif($read['groupid'] == 6 && $groupid != 3 && $db_shield){ $read['subject'] = ''; $read['content'] = shield('ban_article'); }elseif($read['ifconvert']==2){ $read['content']=convert($read['content'],$db_windpost); $read['ifwordsfb']!=$db_wordsfb && $read['content'] = wordsfb($read['content'],$read['ifwordsfb']); }elseif($read['ifwordsfb']!=$db_wordsfb){ $read['content'] = wordsfb($read['content'],$read['ifwordsfb']); } $GLOBALS['foruminfo']['copyctrl'] && $read['content'] = preg_replace("/<br>/eis","copyctrl('#FFFFFF')",$read['content']); /** * convert the post content */ //$read['content']=stripslashes($read['content']); $read['anonymous'] && !$admincheck && $winduid!=$read['authorid'] && $read['author']=$db_anonymousname; return $read; } require_once PrintEot('simple_header'); require_once PrintEot('simple_read'); ?>