⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pw_home.php

📁 PHPWind7_RC_UTF8 开源php论坛很不错的
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php
!function_exists('readover') && exit('Forbidden');

Class HOME {

	function update($type=''){//更新缓存数据
		global $db,$num,$timestamp;
		if($type == 'all'){
			$query = $db->query("SELECT name,title,config FROM pw_home WHERE ifopen='1'");
		} elseif($type){
			$query = $db->query("SELECT name,title,config FROM pw_home WHERE name=".pwEscape($type));
		} else{
			$query = $db->query("SELECT name,title,config FROM pw_home WHERE ifopen='1' AND lastupdate+upstep<".pwEscape($timestamp)."ORDER BY lastupdate ASC LIMIT $num");
		}
		while($rt = $db->fetch_array($query)){
			$config = unserialize($rt['config']);
			if(substr($rt['name'],0,7)=='forums_'){
				$this->forums($rt['name'],$rt['title'],$config);
			} elseif(method_exists($this,$rt['name'])){
				$this->$rt['name']($rt['name'],$rt['title'],$config);
			}
		}
	}

	function eye($name,$title,$config){// 社区幻灯眼模块
		global $db,$timestamp,$imgpath;

		/**   默认配置   **/
		$config['nums']<1 && $config['nums'] = 5;
		if(!in_array($config['order'],array('hits','replies','dig'))){
			$config['order'] = 'hits';
		}
		$flashpics   = '';
		$flashlinks  = '';
		$flashtitles = '';
		$extra       = '';

		if($config['tids']){
			$tids = explode(',',$config['tids']);
			foreach($tids as $tid){
				$pw_tmsgs = GetTtable($tid);
				$rt = $db->get_one("SELECT t.tid,t.subject,tm.aid FROM pw_threads t LEFT JOIN $pw_tmsgs tm USING(tid) WHERE t.tid=".pwEscape($tid)."AND tm.aid!=''");
				if(!$rt) continue;
				$aid = unserialize($rt['aid']);
				foreach($aid as $key=>$value){
					if($value['type']=='img'){
						$value['attachurl'] = geturl($value['attachurl'],'lf');
						$flashpics   .= $extra.$value['attachurl'][0];
						$flashlinks  .= $extra."read.php?tid=$tid";
						$flashtitles .= $extra.$rt['subject'];
						$extra = '|';
						$config['nums']--;break;
					}
				}
			}
		}
		if($config['nums']>0){
			if($GLOBALS['db_tlist']){
				@extract($db->get_one("SELECT MAX(tid) as mtid FROM pw_threads"));
				$pw_tmsgs = GetTtable($mtid);
			} else{
				$pw_tmsgs = 'pw_tmsgs';
			}
			$sql = $config['time']>0 ? " AND t.postdate>".pwEscape($timestamp-86400*$config['time']) : '';

			$query = $db->query("SELECT t.tid,t.subject,tm.aid FROM pw_threads t LEFT JOIN $pw_tmsgs tm ON t.tid=tm.tid LEFT JOIN pw_forums f ON t.fid=f.fid WHERE 1 $sql AND t.ifupload='1' AND tm.aid!='' AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY $config[order] LIMIT $config[nums]");
			while($rt = $db->fetch_array($query)){
				$aid = unserialize($rt['aid']);
				foreach($aid as $key=>$value){
					if($value['type']=='img'){
						$value['attachurl'] = geturl($value['attachurl'],'lf');
						$flashpics   .= $extra.$value['attachurl'][0];
						$flashlinks  .= $extra."read.php?tid=$rt[tid]";
						$flashtitles .= $extra.$rt['subject'];
						$extra = '|';break;
					}
				}
			}
		}

		$html = "<div id=\"eye\"><h5 class=\"h\"><span class=\"fr gray f10\"></span>$title </h5><div class=\"tac\" style=\"padding-top:10px\">
			<SCRIPT type=text/javascript>
				var focus_width=306;
				var focus_height=190;
				var text_height=20;
				var swf_height = focus_height+text_height;
				var pics='$flashpics';
				var links='$flashlinks';
				var texts='$flashtitles';
				document.write('<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" width=\"'+ focus_width +'\" height=\"'+ swf_height +'\" wmode=\"transparent\">');
				document.write('<param name=\"allowScriptAccess\" value=\"sameDomain\"><param name=\"movie\" value=\"$imgpath/pic.swf\"><param name=\"quality\" value=\"high\"><param name=\"bgcolor\" value=\"#ffffff\">');
				document.write('<param name=\"menu\" value=\"false\"><param name=wmode value=\"opaque\">');
				document.write('<param name=\"FlashVars\" value=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'\">');
				document.write('<embed src=\"$imgpath/pic.swf\" wmode=\"opaque\" FlashVars=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'\" menu=\"false\" bgcolor=\"#ffffff\" quality=\"high\" width=\"'+ focus_width +'\" height=\"'+ focus_height +'\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" />');
				document.write('</object>');
			</SCRIPT></div></div>";
		$html = addslashes($html);
		$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html))."WHERE name=".pwEscape($name));
	}

	function tags($name,$title,$config){//热门tag模块
		global $db,$timestamp;

		/**   默认配置   **/
		$config['nums']<1 && $config['nums'] = 25;

		$tagdb = $config['tags'] ? explode(',',$config['tags']) : array();
		$query = $db->query("SELECT tagname FROM pw_tags ORDER BY num DESC LIMIT $config[nums]");
		while($rt = $db->fetch_array($query)){
			if(!in_array($rt['tagname'],$tagdb)){
				$tagdb[] = $rt['tagname'];
			}
		}
		$html = "<div id=\"tags\" class=\"tags\"><h5 class=\"h\">$title</h5><ul>";
		foreach($tagdb as $tag){
			$html .= "<li><a href=\"job.php?action=tag&tagname=".rawurlencode($tag)."\" target=\"_blank\">$tag</a></li>";
		}
		$html .= "</ul></div><div class=\"c\"></div>";
		$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html),false)."WHERE name=".pwEscape($name));
	}

	function recommend($name,$title,$config){// 推荐帖子
		global $db,$timestamp,$imgpath;

		/**   默认配置   **/
		$config['nums']<1 && $config['nums'] = 15;
		!$config['pic'] && $config['pic'] = "hack/home/image/none.bmp";
		if(!in_array($config['order'],array('hits','replies','dig'))){
			$config['order'] = 'dig';
		}

		$read = array();
		$tids = $this->checktids($config['tids']);
		if($tids){
			$query = $db->query("SELECT tid,subject FROM pw_threads WHERE tid IN($tids)");
			while($rt = $db->fetch_array($query)){
				$read[] = $rt;
			}
		}
		$config['nums'] -= count($read);
		if($config['nums']>0){
			$sql   = $config['time']>0 ? " AND t.postdate>".pwEscape($timestamp-86400*$config['time']) : '';
			$query = $db->query("SELECT t.tid,t.subject FROM pw_threads t LEFT JOIN pw_forums f ON t.fid=f.fid WHERE 1 $sql AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY t.$config[order] LIMIT $config[nums]");
			while($rt = $db->fetch_array($query)){
				$read[] = $rt;
			}
		}
		$readone = $read[0];
		unset($read[0]);
		$pw_tmsgs = GetTtable($readone['tid']);
		$rs = $db->get_one("SELECT content FROM $pw_tmsgs WHERE tid=".pwEscape($readone['tid'],false));
		$readone['content'] = substrs($rs['content'],60);

		$html = "<h5 class=\"h\">$title </h5><div><dl class=\"dlA\"><dd class=\"pic\"><img src=\"$config[pic]\" /></dd><dt class=\"h2A\"><a href=\"read.php?tid=$readone[tid]\" class=\"cl1\">$readone[subject]</a></dt><dd class=\"txt\">$readone[content]<div class=\"tar\"><a href=\"read.php?tid=$readone[tid]\">(".getLangInfo('other','home_detail').")</a></div></dd><dd class=\"c\"></dd></dl></div><div class=\"c\"></div><div><ul class=\"listA\">";

		foreach($read as $value){
			$html .= "<li><a href=\"read.php?tid=$value[tid]\">$value[subject]</a></li>";
		}
		$html .= "</ul></div><div class=\"c\"></div>";

		$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html),false)."WHERE name='recommend'");
	}

	function hottopic($name,$title,$config){//热门帖子
		global $db,$timestamp;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -