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

📄 bbsxp_class.asp

📁 闻名一时的bbsxp超快论坛系统现在放出最新版2008版本给希望装论坛的朋友借鉴安装调试
💻 ASP
📖 第 1 页 / 共 3 页
字号:
<!-- #include file="Utility/HashPassword_Class.asp" -->
<%
Function Execute(Command)
	SqlQueryNum = SqlQueryNum + 1
	'Response.Write "("&SqlQueryNum&")"&Command&"<p>"
	Set Execute = Conn.Execute(Command)
End Function


''''''''''''''''''''''''''''''''''''
Class AutoTerminate_Class
	Private Sub Class_Terminate
		if Err.Number<>0 then
			'955 = 未知的运行时错误
			'-2147217864 = 乐观并发检查失败。该行在此游标之外进行了修改。
			If Err.Number<>995 and Err.Number<>-2147217864 then
				set fso = server.CreateObject("Scripting.FileSystemObject")
				set f = fso.OpenTextFile(Server.MapPath("Log/"&FormatDateTime(now(),2)&"_500.log"),8,1)
				f.WriteLine(now()&"	"&Request.ServerVariables("REMOTE_ADDR")&"	"&Request.ServerVariables("Request_method")&"	"&Request.ServerVariables("server_name")&"	"&Request.ServerVariables("script_name")&"	"&Request.ServerVariables("Query_String")&"	"&Err.Number&"	"&Err.Source&"	"&Err.Description&"	"&Request.ServerVariables("All_Http")) 
				f.Close() 
				set f = nothing 
				set fso = nothing
			end if
		end if
		Conn.Close
		Set Rs = Nothing
		Set Conn = Nothing
		Set SiteConfigXMLDOM = Nothing
	End Sub
End Class




''''''''''''''''''''''''''''''''''''
Function SiteConfig(str)
	TextStr=SiteConfigXMLDOM.documentElement.SelectSingleNode(str).text
	if IsNumeric(TextStr) then
		str=int(TextStr)	'转化为数字类型
		if Len(str)<>Len(TextStr) then	str=TextStr	'防止数字前面的 0 消失掉
	else
		str=TextStr
	End If
	SiteConfig=str
End Function



''''''''''''''''''''''''''''''''''''
Function HTMLEncode(fString)
	fString=Trim(fString)
	fString=Replace(fString,CHR(9),"")
	fString=Replace(fString,CHR(13),"")
	fString=Replace(fString,CHR(22),"")
	fString=Replace(fString,CHR(38),"&#38;")	'“&”
	fString=Replace(fString,CHR(32),"&#32;")	'“ ”
	fString=Replace(fString,CHR(34),"&quot;")	'“"”
	fString=Replace(fString,CHR(37),"&#37;")	'“%”
	fString=Replace(fString,CHR(39),"&#39;")	'“'”
	fString=Replace(fString,CHR(42),"&#42;")	'“*”
	fString=Replace(fString,CHR(43),"&#43;")	'“+”
	fString=Replace(fString,CHR(44),"&#44;")	'“,”
	fString=Replace(fString,CHR(45)&CHR(45),"&#45;&#45;")	'“--”
	fString=Replace(fString,CHR(92),"&#92;")	'“\”
	'fString=Replace(fString,CHR(95),"&#95;")	'“_”
	fString=Replace(fString,CHR(40),"&#40;")	'“(”
	fString=Replace(fString,CHR(41),"&#41;")	'“)”
	fString=Replace(fString,CHR(60),"&#60;")	'“<”
	fString=Replace(fString,CHR(62),"&#62;")	'“>”
	fString=Replace(fString,CHR(123),"&#123;")	'“{”
	fString=Replace(fString,CHR(125),"&#125;")	'“}”
	fString=Replace(fString,CHR(59),"&#59;")	'“;”
	fString=Replace(fString,CHR(10),"<br>")
	fString=ReplaceText(fString,"([&#])([a-z0-9]*)&#59;","$1$2;")

	if SiteConfig("BannedText")<>"" then fString=ReplaceText(fString,"("&SiteConfig("BannedText")&")",string(len("&$1&"),"*"))

	if IsSqlDataBase=0 then '过滤片假名(日文字符)[\u30A0-\u30FF] by yuzi
		fString=escape(fString)
		fString=ReplaceText(fString,"%u30([A-F][0-F])","&#x30$1;")
		fString=unescape(fString)
	end if

	HTMLEncode=fString
End Function
''''''''''''''''''''''''''''''''''''
Function BodyEncode(fString)
	fString=Trim(fString)
	fString=Replace(fString, "<br />",vbCrlf)
	fString=Replace(fString,"\","&#92;")
	fString=Replace(fString,"'","&#39;")
	fString=Replace(fString,CHR(60),"&#60;")	'“<”
	fString=Replace(fString,CHR(62),"&#62;")	'“>”
	fString=Replace(fString,"  ","&nbsp; ")
	fString=Replace(fString,"<a href=","<a target=_blank href=") '点链接打开新窗口
	if SiteConfig("BannedText")<>"" then fString=ReplaceText(fString,"("&SiteConfig("BannedText")&")",string(len("&$1&"),"*"))
	BodyEncode=fString
End Function
''''''''''''''''''''''''''''''''''''
Function BBCode(str)
	str=ReplaceText(str,"\[(\/|)(b|i|u|strike|center|marquee)\]","<$1$2>")
	str=ReplaceText(str,"\[align=(center|left|right)\]((?:(?!\[\/align\])[\s\S])*)\[\/align\]","<p align=""$1"">$2</p>")
	str=ReplaceText(str,"\[float=(center|left|right)\]((?:(?!\[\/float\])[\s\S])*)\[\/float\]","<div style=""float:$1"">$2</style>")
	str=ReplaceText(str,"\[COLOR=([^[]*)\]","<font COLOR=$1>")
	str=ReplaceText(str,"\[FONT=([^[]*)\]","<font face=$1>")
	str=ReplaceText(str,"\[SIZE=([0-9]*[pt|px|%]*)\]","<font size=$1>")
	str=ReplaceText(str,"\[\/(SIZE|FONT|COLOR)\]","</font>")
	str=ReplaceText(str,"\[list\]","<ul>")
	str=ReplaceText(str,"\[list=([\w]+)\]","<ul type=$1>")
	str=ReplaceText(str,"\[\/list\]","</ul>")
	str=ReplaceText(str,"\[\*\]","<li>")
	str=ReplaceText(str,"\[media=([\d]*),([\d]*),(true|false),(true|false)\]((?:(?!\[\/media\])[\s\S])*)\[\/media\]","<embed style=""width: $1px; HEIGHT: $2px"" src=""$5"" type=""audio/x-ms-wma"" autostart=""$3"" ShowStatusBar=""$4"" quality=""high"" />")
	
    '表格
	if RegExpTest("\[table(=.[^\[]*)?\]((?:(?!\[\/table\])[\s\S])*)\[\/table\]",""&str&"") then
		str=ReplaceText(str,"\[td=([0-9]*),([0-9]*),(.*?)\]","<td colspan=""$1"" rowspan=""$2"" width=""$3"">")
		str=ReplaceText(str,"\[td=([0-9]*),([0-9]*)\]","<td colspan=""$1"" rowspan=""$2"">")
		str=ReplaceText(str,"\[tr(=.[^\[]*)?\]","<tr>")
		str=ReplaceText(str,"\[\/tr\]","</tr>")
		str=ReplaceText(str,"\[td\]","<td>")
		str=ReplaceText(str,"\[\/td\]","</td>")
		do while RegExpTest("\[table(=.[^\[]*)?\]((?:(?!\[\/table\])[\s\S])*)\[\/table\]",""&str&"")
			str=ReplaceText(str,"\[table(=.[^\[]*)?\]((?:(?!\[\/table\])[\s\S])*)\[\/table\]","<table width=""$1"" border=""1"" style=""border-collapse:collapse;"">$2</table>")
			str=ReplaceText(str,"\[table\]((?:(?!\[\/table\])[\s\S])*)\[\/table\]","<table border=""1"" style=""border-collapse:collapse;"">$1</table>")
		loop
	end if

	str=ReplaceText(str,"\[(url|ed2k)\]ed2k:\/\/\|file\|([^\\\/:*?<>""|]+[\.]?[^\\\/:*?<>""|]+)\|(\d+)\|([0-9a-zA-Z]{32})((\|[^[]*)?)\|\/\[\/(url|ed2k)\]",""&vbCrlf&_
	"<br /><table align=""center"" cellspacing=""1"" cellpadding=""5"" width=""100%"" class=""CommonListArea"">"&vbCrlf&_
	"<tr align=center class=""CommonListHeader""><td>文件名</td><td width=""100"">大小</td></tr>"&vbCrlf&_
	"<tr class=""CommonListCell""><td><a href=""ed2k://|file|$2|$3|$4$5|/"" target=_blank>$2</a> (<a href=""http://www.ed2000.com/ed2kstats/?hash=$4"" target=""_blank"">查源</a>)</td><td align=center><script language=""javascript"">document.write(gen_size($3, 3, 1));</script></td></tr>"&vbCrlf&_
	"<tr class=""CommonListCell""><td colspan=""2""><input type=""button"" value=""下载该资源"" onClick=""download('ed2k://|file|$2|$3|$4$5|/')"" /> <input type=""button"" value=""复制ED2K链接"" onClick=""copyToClipboard('ed2k://|file|$2|$3|$4$5|/')"" /> <span style=""float:right;margin-top:-17px;""><a href=""http://www.ed2000.com/download/"" target=""_blank"">推荐使用eMule进行下载</a></span></td></tr>"&vbCrlf&_
	"</table><br />")

	str=ReplaceText(str,"\[ed2k\]((?:(?!\[\/(url|ed2k)\])[\s\S])*)\[\/ed2k\]",""&vbCrlf&_
	"<br /><table align=""center"" cellspacing=""1"" cellpadding=""5"" width=""100%"" class=""CommonListArea"">"&vbCrlf&_
	"<tr align=center class=""CommonListHeader""><td width=25><input type=""checkbox"" id=""checkall_ed2klist"" onclick=""checkAll('ed2klist',this.checked)"" /></td><td>文件名</td><td width=""100"">大小</td></tr>$1"&vbCrlf&_
	"<tr class=""CommonListCell""><td colspan=""3""><input type=""button"" value=""下载选中资源"" onClick=""Download('ed2klist',0,1)"" /> <input type=""button"" value=""复制ED2K链接"" onClick=""copy('ed2klist')"" /> <span style=""float:right;margin-top:-17px;""><a href=""http://www.ed2000.com/download/"" target=""_blank"">推荐使用eMule进行下载</a></span></td></tr>"&vbCrlf&_
	"</table><br />")

	str=ReplaceText(str,"\[link\]ed2k:\/\/\|file\|([^\\\/:*?<>""|]+[\.]?[^\\\/:*?<>""|]+)\|(\d+)\|([0-9a-zA-Z]{32})((\|[^[]*)?)\|\/\[\/link\]","<tr class=""CommonListCell""><td align=center><input type=""checkbox"" value=""ed2k://|file|$1|$2|$3$4|/"" onclick=""em_size(''+this.name+'');"" name=""ed2klist"" /></td><td><a href=""ed2k://|file|$1|$2|$3$4|/"" target=_blank>$1</a> (<a href=""http://www.ed2000.com/ed2kstats/?hash=$3"" target=""_blank"">查源</a>)</td><td align=center><script language=""javascript"">document.write(gen_size($2, 3, 1));</script></td></tr>")

	str=ReplaceText(str,"\[URL\]([^[]*)","<a target=_blank href=$1>$1")
	str=ReplaceText(str,"\[URL=([^[]*)\]","<a target=_blank href=$1>")
	str=ReplaceText(str,"\[\/URL\]","</a>")
	str=ReplaceText(str,"\[EMAIL\](\S+\@[^[]*)(\[\/EMAIL\])","<a href=mailto:$1>$1</a>")
	str=ReplaceText(str,"\[EMAIL=(\S+\@[^[]*)\](\S+\@[^[]*)(\[\/EMAIL\])","<a href=mailto:$1>$2</a>")
	str=ReplaceText(str,"\[IMG\]([^("&CHR(34)&"|[|#)]*)(\[\/IMG\])","<img border=0 src=$1 />")
	str=ReplaceText(str,"\[IMG=([0-9]*),([0-9]*)\]([^("&CHR(34)&"|[|#)]*)(\[\/IMG\])","<img width=$1 height=$2 border=0 src=$3 />")
	str=ReplaceText(str,"\[quote\]","<blockquote>")
	str=ReplaceText(str,"\[quote user="&CHR(34)&"([^[]*)"&CHR(34)&"\]","<blockquote><img border=0 src=images/icon-quote.gif> <b>$1:</b><br>")
	str=ReplaceText(str,"\[\/quote\]","</blockquote>")
	str=Replace(str,"<%","&lt;%")
	str=replace(str,vbcrlf,"<br />")

	BBCode=str
End Function

''''''''''''''''''''''''''''''''''''
Function RequestInt(fString)
	RequestInt=Request(fString)
	if IsNumeric(RequestInt) then
		RequestInt=int(RequestInt)
	else
		RequestInt=0
	end if
End Function

''''''''''替换模块START''''''''''''
Function ReplaceText(fString,patrn,replStr)
	Set regEx = New RegExp   	' 建立正则表达式。
		regEx.Pattern = patrn   ' 设置模式。
		regEx.IgnoreCase = True ' 设置是否区分大小写。
		regEx.Global = True     ' 设置全局可用性。 
		ReplaceText = regEx.Replace(""&fString&"",""&replStr&"") ' 作替换。
	Set regEx=nothing
End Function
''''''''''替换模块END''''''''''''
Function RegExpTest(patrn, strng)
	Set regEx = New RegExp   		' 建立正则表达式。
		regEx.Pattern = patrn   	' 设置模式。
		regEx.IgnoreCase = True 	' 设置是否区分大小写。
		regEx.Global = True     	' 设置全局可用性。 
		RegExpTest = regEx.Test(strng) ' 执行搜索。
	Set regEx=nothing
End Function

'''''''''''''''''''Cookies Process Start''''''''''''''''''''
Function ResponseCookies(Key,Value,Expires)
	Response.Cookies(Key) = ""&Value&""
	if ""&SiteConfig("CookieDomain")&""<>"" then Response.Cookies(Key).Domain = SiteConfig("CookieDomain")
	Response.Cookies(Key).Path = SiteConfig("CookiePath")
	if int(Expires)>0 then Response.Cookies(Key).Expires = date+Expires
End Function
'''''''''''''''''''''''''''''''''''''''''''
Function RequestCookies(CookieName)
	RequestCookies=Request.Cookies(CookieName)
End Function
'''''''''''''''''''''''''''''''''''''''''''
Function CleanCookies()
	For Each objCookie In Request.Cookies
		ResponseCookies objCookie,"",0
	Next
	ResponseCookies "Themes",SiteConfig("DefaultSiteStyle"),365
End Function
'''''''''''''''''''Cookies Process End''''''''''''''''''''


'''''''''''''''''''''''''''''''''''''''''''
'写入Application
Function ResponseApplication(Key,Value)
	Application(SiteConfig("CacheName")&"_"&Key) = Value
End Function

'读取Application
Function RequestApplication(Key)
	RequestApplication=Application(SiteConfig("CacheName")&"_"&Key)
End Function

'删除Application
Function RemoveApplication(Key)
	Application.Contents.Remove(SiteConfig("CacheName")&"_"&Key)
End Function

'追加Application
Function AddApplication(Key,Value)
	Application(SiteConfig("CacheName")&"_"&Key) = Application(SiteConfig("CacheName")&"_"&Key)&Value&"<br>"
End Function

'更新缓存
Function UpdateApplication(Key,SQL)
	Application.Lock
		ResponseApplication Key,FetchEmploymentStatusList(SQL)
	Application.Unlock
End Function

'''''''''''''''''''''''''''''''''''''''''''
Function FetchEmploymentStatusList(SQL)
	Set Rs2=Execute(SQL)
	if Rs2.Eof then
		Rs2.Close
		Set Rs2 = Nothing
		Exit Function
	End if
  	FetchEmploymentStatusList = Rs2.GetRows()
	Rs2.Close
	Set Rs2 = Nothing

⌨️ 快捷键说明

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