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

📄 bbscode.php

📁 一个可以实时查看股票行情的小程序,真是一个好程序哦,直得大家
💻 PHP
字号:
<?php
!function_exists('readover') && exit('Forbidden');
function convert($message,$allow,$type="post") 
{
	global $code_num,$code_htm,$foruminfo,$picpath,$imgpath,$stylepath,$attachpath,$admincheck,$tpc_author,$tpc_buy,$tablecolor;

	if (file_exists(R_P."data/bbscache/wordsfb.php")){
		global $wordsfb;
		include_once(R_P."data/bbscache/wordsfb.php");
		if($wordsfb){
			foreach($wordsfb as $key=>$value)
				$message=str_replace($key,$value,$message);
		}
	}

	$code_num=0;$code_htm=array();
	if(strpos($message,"[code]") !== false && strpos($message,"[/code]") !== false){
		$message=preg_replace("/\[code\](.+?)\[\/code\]/eis","phpcode('\\1')",$message);
	}
	$message =preg_replace('/\[list=([aA1]?)\](.+?)\[\/list\]/is', "<ol type=\\1>\\2</ol>", $message);
	$message =str_replace("[u]","<u>",$message);
	$message =str_replace("[/u]","</u>",$message);
	$message =str_replace("[b]","<b>",$message);
	$message =str_replace("[/b]","</b>",$message);
	$message =str_replace("[i]","<i>",$message);
	$message =str_replace("[/i]","</i>",$message);
	$message =str_replace("[list]","<ul>",$message);
	$message =str_replace('[*]', '<li>', $message);
	$message =str_replace("[/list]","</ul>",$message);
	$message =str_replace("p_w_upload",$attachpath,$message);//此处位置不可调换
	$message =str_replace("p_w_picpath",$picpath,$message);//此处位置不可调换

	//$message=preg_replace("/\[upload_pic_(.+?)\]/eis","upload('\\1')",$message);

	$searcharray = array(
		"/\[font=([^\[]*)\](.+?)\[\/font\]/is",
		"/\[color=([#0-9a-z]{1,10})\](.+?)\[\/color\]/is",
		"/\[email=([^\[]*)\](.+?)\[\/email\]/is",
	    "/\[email\]([^\[]*)\[\/email\]/is",
		"/\[size=(\d+)\](.+?)\[\/size\]/is",
		"/(\[fly\])(.+?)(\[\/fly\])/is",
		"/(\[move\])(.+?)(\[\/move\])/is",
		"/(\[align=)(left|center|right)(\])(.+?)(\[\/align\])/is",
		"/\[glow=(\d+)\,([0-9a-zA-Z]+?)\,(\d+)\](.+?)\[\/glow\]/is"
	);
	$replacearray = array(
		"<font face='\\1'>\\2</font>",
		"<font color='\\1'>\\2</font>",
		"<a href='mailto:\\1'>\\2</a>",
		"<a href='mailto:\\1'>\\1</a>",
		"<font size='\\1'>\\2</font>",
		"<marquee width=90% behavior=alternate scrollamount=3>\\2</marquee>",
		"<marquee scrollamount=3>\\2</marquee>",
		"<DIV Align=\\2>\\4</DIV>",
		"<span style=\"WIDTH:'\\1';filter:glow(color='\\2', strength='\\3')\">\\4</span>"
	);
	$message=preg_replace($searcharray,$replacearray,$message);


	if ($allow['pic']){
		$message = preg_replace("/\[img\](.+?)\[\/img\]/eis","cvpic('\\1')",$message);
    } else{
		$message = preg_replace("/\[img\](.+?)\[\/img\]/eis","nopic('\\1')",$message);
	}

	if(strpos($message,'[/URL]')!==false || strpos($message,'[/url]')!==false){
		$searcharray = array(
			"/\[url=(https?|ftp|gopher|news|telnet|mms|rtsp)([^\[]*)\](.+?)\[\/url\]/eis",			
			"/\[url\]www\.([^\[]*)\[\/url\]/eis",
			"/\[url\](https?|ftp|gopher|news|telnet|mms|rtsp)([^\[]*)\[\/url\]/eis"
		);
		$replacearray = array(
			"cvurl('\\1','\\2','\\3')",
			"cvurl('\\1')",
			"cvurl('\\1','\\2')",
		); 
		$message=preg_replace($searcharray,$replacearray,$message);
	}


	if($type=="post")
	{
		if(strpos($message,'[p:')!==false || strpos($message,'[s:')!==false){
			global $face,$motion;
			include_once(R_P.'data/bbscache/postcache.php');
			foreach($face as $key=>$value){
				$message=str_replace("[s:$key]","<img src='$imgpath/post/smile/$value'>",$message);
			}
			//$message=preg_replace("/\[s:(.+?)\]/eis",'$face[\\1]',$message);

			$act="<font color=red><b>[$tpc_author]</b></font>";
			$count=count($motion);
			foreach($motion as $key=>$value){
				$message=str_replace("[p:$key]","<br>$act $value[1]<br><img src=$imgpath/post/act/$value[2]><br>",$message);
			}
		}

		if($foruminfo['allowhide'] && strpos($message,"[post]") !== false && strpos($message,"[/post]") !== false){
			$message=preg_replace("/\[post\](.+?)\[\/post\]/eis","post('\\1')",$message);
		}
		if($foruminfo['allowencode'] && strpos($message,"[hide") !== false && strpos($message,"[/hide]") !== false){
			$message=preg_replace("/\[hide=(.+?)\](.+?)\[\/hide\]/eis","hiden('\\1','\\2')",$message);
		}
		if($foruminfo['allowsell'] && strpos($message,"[sell") !== false && strpos($message,"[/sell]") !== false){
			$message=preg_replace("/\[sell=(.+?)\](.+?)\[\/sell\]/eis","sell('\\1','\\2')",$message);
		}
	}
	if ($allow['flash']){
        $message = preg_replace("/(\[flash=)(\S+?)(\,)(\S+?)(\])(\S+?)(\[\/flash\])/is","<OBJECT CLASSID=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" WIDTH=\\2 HEIGHT=\\4><PARAM NAME=MOVIE VALUE=\\6><PARAM NAME=PLAY VALUE=TRUE><PARAM NAME=LOOP VALUE=TRUE><PARAM NAME=QUALITY VALUE=HIGH><EMBED SRC=\\6 WIDTH=\\2 HEIGHT=\\4 PLAY=TRUE LOOP=TRUE QUALITY=HIGH></EMBED></OBJECT><br />[<a target=_blank href=\\6>Full Screen</a>] ",$message);
	}else{
		$message = preg_replace("/(\[flash=)(\S+?)(\,)(\S+?)(\])(\S+?)(\[\/flash\])/is","<img src='$imgpath/$stylepath/file/music.gif' align='absbottom'> <a target=_blank href=\\6>flash: \\6</a>",$message);
	}

	if (strpos($message,"[quote]") !== false && strpos($message,"[/quote]") !== false){
		$message=preg_replace("/\[quote\](.+?)\[\/quote\]/eis","qoute('\\1')",$message);
	}
	if(is_array($code_htm)){
		krsort($code_htm);
		foreach($code_htm as $codehtm){
			foreach($codehtm as $key=>$value){
				$message=str_replace("[\twind_code_$key\t]",$value,$message);
				
			}
		}
	}
	if($type=="post"){
		if($allow['mpeg']){
			$message = preg_replace("/\[wmv\]\s*(\S+?)\s*\[\/wmv\]/is","<EMBED src=\\1 HEIGHT=\"256\" WIDTH=\"314\" AutoStart=1></EMBED>",$message);
			$message = preg_replace("/\[rm\]\s*(\S+?)\s*\[\/rm\]/is","<object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=241 id=Player width=316 VIEWASTEXT><param name=\"_ExtentX\" value=\"12726\"><param name=\"_ExtentY\" value=\"8520\"><param name=\"AUTOSTART\" value=\"0\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"ImageWindow\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"\\1\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"></object><br><object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=32 id=Player width=316 VIEWASTEXT><param name=\"_ExtentX\" value=\"18256\"><param name=\"_ExtentY\" value=\"794\"><param name=\"AUTOSTART\" value=\"1\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"controlpanel\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"0\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"><param name=\"SRC\" value=\"\\1\"></object>",$message);
		}else{
			$message = preg_replace("/(\[wmv\])(\S+?)(\[\/wmv\])/is","<img src='$imgpath/$stylepath/file/music.gif' align='absbottom'> <a target=_blank href='\\2'>\\2</a>",$message);
			$message = preg_replace("/(\[rm\])(\S+?)(\[\/rm\])/is","<img src='$imgpath/$stylepath/file/music.gif' align='absbottom'> <a target=_blank href='\\2'>\\2</a>",$message);
		}
		if ($allow['iframe']) {
			$message = preg_replace("/\[iframe\]\s*(\S+?)\s*\[\/iframe\]/is","<IFRAME SRC=\\1 FRAMEBORDER=0 ALLOWTRANSPARENCY=true SCROLLING=YES WIDTH=97% HEIGHT=340></IFRAME>",$message);
		}else{
			$message = preg_replace("/(\[iframe\])(\S+?)(\[\/iframe\])/is","Iframe Close: <a target=_blank href='\\2'>\\2</a>",$message);
		}
		//此处位置不可调换
	}
	return $message;
}
/*function upload($aid){
	global $pic_a;
	return $pic_a[$aid];
}*/
function cvurl($http,$url='',$name=''){
	global $code_num,$code_htm;
	$code_num++;
	if(!$url){
		$url="<a href='http://www.$http' target=_blank>www.$http</a>";
	} elseif(!$name){
		$url="<a href='$http$url' target=_blank>$http$url</a>";
	} else{
		$url="<a href='$http$url' target=_blank>$name</a>";
	}
	$code_htm[0][$code_num]=$url;
	return "[\twind_code_$code_num\t]";
}
function nopic($url){
	global $code_num,$code_htm,$imgpath,$stylepath;
	$code_num++;
	$code_htm[-1][$code_num]="<img src='$imgpath/$stylepath/file/img.gif' align='absbottom' border=0> <a target=_blank href='$url'>img: $url</a>";
	return "[\twind_code_$code_num\t]";
}
function cvpic($url,$type='')
{
	global $db_bbsurl,$picpath,$attachpath;
	global $code_num,$code_htm;
	$code_num++;
	if(strtolower(substr($url,0,4))!='http' && !$type)$url='http'.$url;
	$code="<img src='$url' border=0 onclick=\"if(this.width>screen.width-461) window.open('$url');\" onload='if(this.width>screen.width-460)this.width=screen.width-460'>";
	$code_htm[-1][$code_num]=$code;
	if($type){
		return $code;
	} else{
		return "[\twind_code_$code_num\t]";
	}
}
function phpcode($code){
	global $code_num,$code_htm;
	$code=str_replace("<br>","\n",$code);
	$code=str_replace("<br />","\n",$code);
	$code_num++;
	$code_htm[1][$code_num]="<br><br><font color=red>Code:</font><br><TEXTAREA name=textfield rows=10 style='WIDTH:100%;'>$code</textarea><br><font color=red>[Ctrl+A Select All]</font><br><br>";
	return "[\twind_code_$code_num\t]";
}
function qoute($code){
	global $code_num,$code_htm,$tablecolor;
	$code_num++;
	$code_htm[6][$code_num]="<div class=quote>$code</div>";
	return "[\twind_code_$code_num\t]";
}
//////////////
function post($code){
	global $SYSTEM,$postcode1,$postcode2,$attachper,$db,$tid,$fid,$winduid,$windid,$admincheck,$groupid,$tpc_author,$tablecolor;
	global $code_num,$code_htm,$lang;
	require_once GetLang('bbscode');
	$code_num++;
	$attachper=0;
	$rs = $db->get_one("SELECT count(*) AS count FROM pw_posts WHERE tid='$tid' AND authorid='$winduid'");
	if($rs['count']>0){
		$havereply='yes';
	}
	if($admincheck==1 || $SYSTEM['viewhide'] || $havereply=='yes' || $tpc_author==$windid){
		$attachper=1;
		$code_htm[3][$code_num]="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$lang[bbcode_hide1]<br><div class=quote>{$code}</div>";
	} else{
		$code_htm[3][$code_num]="<br><br><div class=quote>$lang[bbcode_hide2]</div><br><br>";
	}
	return "[\twind_code_$code_num\t]";
}
function hiden($rvrc,$code){
	global $hidecode1,$hidecode2,$hidecode3,$db,$groupid,$attachper,$userrvrc,$tablecolor;
	global $code_num,$code_htm,$lang;
	require_once GetLang('bbscode');
	$code_num++;
	$attachper=0;
	if($groupid!='guest'){
		global $admincheck,$userrvrc,$userpath,$windid,$tpc_author,$SYSTEM;
		$rvrc=trim(intval(stripslashes($rvrc)));
		if($windid!=$tpc_author && $userrvrc<$rvrc && $admincheck!=1 && !$SYSTEM['viewhide']){
			$code="<div class=quote>{$lang[bbcode_encode1]}{$rvrc}</div>";
		} else {
			$attachper=1;
			$code="&nbsp; &nbsp; &nbsp; {$lang[bbcode_encode2]}<br><div class=quote>{$code}</div>";
		}
	} else{
		$code=$lang['bbcode_encode3'];
	}
	$code_htm[4][$code_num]=$code;
	return "[\twind_code_$code_num\t]";
}
function sell($moneycost,$code){
	global $SYSTEM,$admincheck,$attachper,$windid,$tpc_author,$tpc_buy,$fid,$tid,$pid,$tablecolor,$manager,$groupid,$db_moneyunit,$db_bbsurl;
	global $code_num,$code_htm,$lang;
	require_once GetLang('bbscode');
	$code_num++;
	$sellcheck=$attachper=0;
		if($moneycost < 0){
		$moneycost = 0;
	}elseif ($moneycost > 1000){
		$moneycost = 1000;
	}elseif ($moneycost && !ereg("^[0-9]{0,}$",$moneycost)){
		$moneycost = 0;
	}
	$userarray=explode(',',$tpc_buy);
	foreach($userarray as $value){
		if($value){
			$count++;
			$buyers.="<OPTION value=>".$value."</OPTION>";
		}
	}
	!$count && $count=0;
	if ($groupid!='guest'&& ($SYSTEM['viewhide'] || $admincheck || $tpc_author==$windid || ($userarray && @in_array($windid,$userarray)))){
		$sellcheck=1;//在函数里也无所谓变量攻击了
	}
	$attachper=$sellcheck;
	$lang['bbcode_sell_info']=str_replace(array('$moneycost','$db_moneyunit','$count'),array($moneycost,$db_moneyunit,$count),$lang['bbcode_sell_info']);
	if($groupid!='guest' && $sellcheck==1){
		$printcode="&nbsp; &nbsp; &nbsp; &nbsp;<span class='bold'><font color='red'>{$lang[bbcode_sell_info]}</font></span><select name='buyers'><OPTION value=''>{$lang[bbcode_sell_buy]}</OPTION>$buyers</select><br><div class=quote>$code</div>";
	}else{
		$printcode="<br><span class='bold'><font color='red'>{$lang[bbcode_sell_info]}</font></span><select name='buyers'><OPTION value=''>{$lang[bbcode_sell_buy]}</OPTION><OPTION value=>-----------</OPTION>$buyers</select><input type='button' value='{$lang[bbcode_sell_submit]}' style='color: #000000; background-color: #f3f3f3; border-style: solid; border-width: 1' onclick=location.href='$db_bbsurl/job.php?action=buytopic&tid=$tid'><br><br><font color=red>{$lang[bbcode_sell_notice]}</font><br>";
	}
	$code_htm[5][$code_num]=$printcode;
	return "[\twind_code_$code_num\t]";
}
function showfacedesign($usericon){
	$user_a=explode('|',$usericon);
	if (strpos($usericon,'<')!==false || (empty($user_a[0]) && empty($user_a[1]))){
		return '<br><br>';
	}
	global $imgpath;
	if ($user_a[1]){
		if(!ereg("^http",$user_a[1])){
			$user_a[1]="$imgpath/upload/$user_a[1]";
		}
		if($user_a[2] && $user_a[3]){
			return "<img src='$user_a[1]' width=$user_a[2] height=$user_a[3] border=0>";
		}else{
			return "<img src='$user_a[1]' border=0>";
		}
	} else {
		return "<img src='$imgpath/face/$user_a[0]' border=0>";
	}
}
?>

⌨️ 快捷键说明

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