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

📄 query.asp

📁 公司企业网站管理系统全站源码,用于企业内部对网站的管理
💻 ASP
📖 第 1 页 / 共 3 页
字号:
<!--#include file="conn.asp"-->
<!-- #include file="inc/const.asp" -->
<!-- #include file="inc/dv_clsother.asp" -->
<%
If Dvbbs.BoardID < 0 Then
	Response.Write "参数错误"
	Response.End
End If
Dim action,ReportText
action=Request("action")
If (Not Dvbbs.Master) And Action<>"isWeb" Then action=""
If Dvbbs.Forum_Setting(3)="0" Then
	Dvbbs.Forum_Setting(3)="120"
End If
Dim XMLDOM
Dvbbs.LoadTemplates("query")
If Cint(Dvbbs.GroupSetting(14))=0 And Request("isWeb")<>"2" Then Dvbbs.AddErrCode(60)
If request("stype")="" Then
	If action="" Then
		Dvbbs.stats=template.Strings(0)
		Dvbbs.nav()
		If DVbbs.BoardID=0 then
			Dvbbs.Head_var 0,0,template.Strings(0),"query.asp"
		Else
			Dvbbs.Head_var 1,Application(Dvbbs.CacheName&"_boardlist").documentElement.selectSingleNode("board[@boardid='"&Dvbbs.BoardID&"']/@depth").text,"",""
		End If
		Dvbbs.ShowErr()
		Queryform()
	ElseIf action="batch" Then 
			Dvbbs.stats=template.Strings(22)
			Dvbbs.nav()
			If DVbbs.BoardID=0 then
				Dvbbs.Head_var 0,0,template.Strings(0),"query.asp"
			Else
				Dvbbs.Head_var 1,Application(Dvbbs.CacheName&"_boardlist").documentElement.selectSingleNode("board[@boardid='"&Dvbbs.BoardID&"']/@depth").text,"",""
			End If
			Dobatch()
	ElseIf action="isWeb" Then
		isWeb_Query()
	End If
Else
	Dvbbs.Stats=template.Strings(1)
	Dim stype,pSearch,nSearch,keyword,stable,page,searchday,searchboard,page_count,Pcount,isWeb,isMoreInfo
	Dim totalrec,endpage,ordername
	Dim SqlColumn,SelSearch
	Dim SearchMaxPageList
	isWeb = 0
	isMoreInfo = 0
	'搜索返回结果数控制
	If Dvbbs.Forum_Setting(12)<>"0" Then
		If IsNumeric(Dvbbs.Forum_Setting(12)) Then
		If Clng(Dvbbs.Forum_Setting(12)) Mod Cint(Dvbbs.Forum_Setting(11))=0 Then
			SearchMaxPageList = Clng(Dvbbs.Forum_Setting(12)) \ Cint(Dvbbs.Forum_Setting(11))
		Else
	     	SearchMaxPageList = Clng(Dvbbs.Forum_Setting(12)) \ Cint(Dvbbs.Forum_Setting(11))+1
  		End If
		Else
			SearchMaxPageList = 50
		End If
	Else
		SearchMaxPageList = 50
	End If
	CheckRequestInfo()
	Dvbbs.ShowErr()
	SearchResult()
	Dvbbs.ShowErr()
End If
Set XMLDOM=Nothing
Dvbbs.ActiveOnline
Dvbbs.Footer()

Sub Queryform()
	If Not IsObject(Application(Dvbbs.CacheName&"_Searchform")) Then
		Set XMLDOM=Server.CreateObject("Msxml2.FreeThreadedDOMDocument")
		XMLDOM.appendChild(XMLDOM.createElement("xml"))
		Dim keywordlimited
		keywordlimited = Split(Dvbbs.Forum_Setting(4),"|")
		If UBound(keywordlimited)<1 Then
			ReDim keywordlimited(1)
			keywordlimited(0)=2
			keywordlimited(1)=20
		End If
		XMLDOM.documentElement.attributes.setNamedItem(XMLDOM.createNode(2,"keywordminlen","")).text=keywordlimited(0)
		XMLDOM.documentElement.attributes.setNamedItem(XMLDOM.createNode(2,"keywordmaxlen","")).text=keywordlimited(1)
		XMLDOM.documentElement.attributes.setNamedItem(XMLDOM.createNode(2,"timelimited","")).text=Dvbbs.Forum_Setting(3)
		Dim Rs,Node
		Set Rs=Dvbbs.Execute("select * from Dv_TableList")
		Do while Not Rs.Eof
			Set Node=XMLDOM.documentElement.appendChild(XMLDOM.createNode(1,"posttable",""))
			Node.text=Rs("tablename")&""
			Node.attributes.setNamedItem(XMLDOM.createNode(2,"type","")).text=""&Rs("tabletype")
			Rs.MoveNext
		Loop
		Set Rs=Nothing
		Set Application(Dvbbs.CacheName&"_Searchform")=XMLDOM.cloneNode(True)
	Else
		Set XMLDOM=Application(Dvbbs.CacheName&"_Searchform").cloneNode(True)		
	End If
	XMLDOM.documentElement.attributes.setNamedItem(XMLDOM.createNode(2,"boardid","")).text=Dvbbs.BoardID
	DoShowHTML
End Sub
Sub DoShowHTML()
	Dim XSLTemplate,stylesheet,proc,node,cnode
	If Not IsObject(Application(Dvbbs.CacheName&"_querytemplate_"&Dvbbs.SkinID)) Then
		Set stylesheet=Server.CreateObject("Msxml2.FreeThreadedDOMDocument"& MsxmlVersion)
		'stylesheet.load server.MapPath("query.xslt")
		stylesheet.loadxml template.html(0)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="ztopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(0)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="istopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(1)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="opentopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(2)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="hottopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(3)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="ilocktopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(4)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="besttopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(5)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="votetopic"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(6)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="pic_toptopic1"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainpic(19)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="tablewidth"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainsetting(0)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="bordercolor"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainsetting(12)
		stylesheet.documentElement.appendChild(node)
		Set Node=stylesheet.createNode(1,"xsl:variable","http://www.w3.org/1999/XSL/Transform")
		Set CNode=stylesheet.createNode(2,"name","")
		CNode.text="alertcolor"
		Node.attributes.setNamedItem(CNode)
		node.text=Dvbbs.mainsetting(1)
		stylesheet.documentElement.appendChild(node)
		Set XSLTemplate=Server.CreateObject("Msxml2.XSLTemplate" &MsxmlVersion )
		XSLTemplate.stylesheet=stylesheet
		Set Application(Dvbbs.CacheName&"_querytemplate_"&Dvbbs.SkinID)=XSLTemplate
	Else
		Set XSLTemplate=Application(Dvbbs.CacheName&"_querytemplate_"&Dvbbs.SkinID)
	End If
	'XMLDOM.save Server.MapPath(MyDbPath &"query.xml")
	Set proc = XSLTemplate.createProcessor()
	proc.input = XMLDOM
	proc.transform()
	Response.Write  proc.output
End Sub
Sub CheckRequestInfo()
	Dim i
	stype=Trim(Request("stype"))
	pSearch=Trim(Request("pSearch"))
	nSearch=Trim(Request("nSearch"))
	keyword=Trim(Dvbbs.checkStr(Request("keyword")))
	stable=Replace(Request("stable"),"'","")
	SelSearch = Request("selsearch")
	If not IsNumeric(pSearch) Then pSearch=1
	If not IsNumeric(nSearch) Then nSearch=1
	If stable="" Or Len(stable)>10 Then stable=Dvbbs.NowUseBbs
	If request("page")<>"" and IsNumeric(request("page")) Then
		page=Clng(request("page"))
	Else
		page=1
	End If
	If SelSearch = "" Then SelSearch = "Page"
	If Cint(Dvbbs.GroupSetting(14))=0 And Request("isWeb")<>"2" Then Dvbbs.AddErrCode(60)
	If Len(stable)>8 Then Dvbbs.AddErrCode(35)
	If sType = 1 Or sType = 2 Or sType = 7 Then
		If keyword="" Then Dvbbs.AddErrCode(61)
		If keyword<>"" Then
			Dim Foundmykeyword
			Foundmykeyword = False
			'搜索不受长度限制的词
			If Dvbbs.Forum_Setting(9)<>"0" Then
				Dim mykeyword
				mykeyword = Split(Dvbbs.Forum_Setting(9),"|")
				For i = 0 To Ubound(mykeyword)
					If Instr(Lcase(keyword),Lcase(mykeyword(i)))>0 Then
						Foundmykeyword = True
						Exit For
					End If
				Next
			End If
			'搜索字串最小和最大长度
			If Dvbbs.Forum_Setting(4)<>"0" And Not Foundmykeyword And Not (Dvbbs.Master Or Dvbbs.BoardMaster Or Dvbbs.SuperBoardMaster) Then
				Dim keywordlimited
				keywordlimited = Split(Dvbbs.Forum_Setting(4),"|")
				If Ubound(keywordlimited)=1 Then
					If IsNumeric(keywordlimited(0)) Then
						If Len(keyword)<Clng(keywordlimited(0)) Then Response.redirect "showerr.asp?ErrCodes=<li>"&Replace(template.Strings(17),"{$minlength}",keywordlimited(0))&"&action=OtherErr"
					End If
					If IsNumeric(keywordlimited(1)) Then
						If Len(keyword)>Clng(keywordlimited(1)) Then Response.redirect "showerr.asp?ErrCodes=<li>"&Replace(template.Strings(18),"{$maxlength}",keywordlimited(1))&"&action=OtherErr"
					End If
				End If
			End If
		End If
		
		'搜索多少天内帖子
		'If Lcase(request("SearchDate"))="all" Then
		'	searchday=" "
		'Else
		'	If request("SearchDate")<>"" And IsNumeric(Request("SearchDate"))  Then
		'		If IsSqlDataBase=1 Then
		'			searchday=" datediff(d,DateAndTime,"&SqlNowString&") < "&Dvbbs.checkStr(request("SearchDate"))&" and "
		'		Else
		'			searchday=" datediff('d',DateAndTime,"&SqlNowString&") < "&Dvbbs.checkStr(request("SearchDate"))&" and "
		'		End If
		'	Else
		'		Dvbbs.AddErrCode(62)
		'	End If
		'End If
	End If
	'isWeb=0包含站外搜索,isWeb=1仅站内,isWeb=2仅站外
	If sType = 3 Or sType = 5 Then
		isWeb = 1
	Else
		isWeb = Request("isWeb")
		If isWeb = "" Or Not IsNumeric(isWeb) Then isWeb = 1
		If Request("submit")="网页搜索" And Not isWeb=0 Then
			isWeb=2
			sType=8
		End If
		isWeb = Cint(isWeb)
		If isWeb < 0 Or isWeb > 2 Then isWeb = 1
	End If
	SearchBoard = " "
	If Dvbbs.BoardID>0 Then SearchBoard=" BoardID="&Dvbbs.BoardID&" and "
	Dim FobWords
	'搜索过滤字
	FobWords = Array(91,92,304,305,430,431,437,438,12460,12461,12462,12463,12464,12465,12466,12467,12468,12469,12470,12471,12472,12473,12474,12475,12476,12477,12478,12479,12480,12481,12482,12483,12485,12486,12487,12488,12489,12490,12496,12497,12498,12499,12500,12501,12502,12503,12504,12505,12506,12507,12508,12509,12510,12532,12533,65339,65340)
	For i = 1 to Ubound(FobWords,1)
		If InStr(keyword,ChrW(FobWords(i))) > 0 Then
			Dvbbs.AddErrCode(61)
			Exit For
		End If
	Next
	FobWords = Array("~","!","@","#","$","%","^","&","*","(",")","_","+","=","`","[","]","{","}",";",":","""","'",",","<",">",".","/","\","|","?","_","about","1","2","3","4","5","6","7","8","9","0","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","after","all","also","an","and","another","any","are","as","at","be","because","been","before","being","between","both","but","by","came","can","come","could","did","do","each","for","from","get","got","had","has","have","he","her","here","him","himself","his","how","if","in","into","is","it","like","make","many","me","might","more","most","much","must","my","never","now","of","on","only","or","other","our","out","over","said","same","see","should","since","some","still","such","take","than","that","the","their","them","then","there","these","they","this","those","through","to","too","under","up","very","was","way","we","well","were","what","where","which","while","who","with","would","you","your","的","一","不","在","人","有","是","为","以","于","上","他","而","后","之","来","及","了","因","下","可","到","由","这","与","也","此","但","并","个","其","已","无","小","我","们","起","最","再","今","去","好","只","又","或","很","亦","某","把","那","你","乃","它")
	keyword = Left(keyword,100)

⌨️ 快捷键说明

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