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

📄 admin_batch.asp

📁 品泡女人香XI8.NET文章管理系统的源码
💻 ASP
📖 第 1 页 / 共 2 页
字号:

	For i=1 To Request.Form("Announceid").Count
		Id=Replace(Request.Form("Announceid")(i),"'","")
		ID=CLng(ID)
		Set Rs=Dvbbs.Execute("Select PostTable,Isbest,Child,IsTop from dv_Topic Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
		If Not(Rs.Eof And Rs.Bof) Then
			TotalUseTable = Rs(0)
			ChildNum = ChildNum + Rs(2)
			Dvbbs.Execute("UPDATE " & TotalUseTable & " SET BoardID = " & Newboard & " WHERE BoardID = " & Dvbbs.BoardID & " AND RootID = " & ID)
			Dvbbs.Execute("UPDATE Dv_Topic SET BoardID = " & Newboard & " WHERE BoardID = " & Dvbbs.BoardID & " AND TopicID = " & ID)
			If Rs(1) = 1 Then
				Dvbbs.Execute("UPDATE Dv_Besttopic Set BoardID = " & Newboard & " WHERE BoardID = " & Dvbbs.BoardID & " AND RootID = " & ID)
			End If
			'移动时判断是否固顶并作相关处理 2004-4-25 Dvbbs.YangZheng
			If Rs("istop") > 0 Then
				Dim Yrs, TopstrinfoN, TopstrinfoO
				'读取新旧版面的固顶信息
				Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Dvbbs.Boardid)
				TopstrinfoO = Yrs(0)
				Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Newboard)
				TopstrinfoN = Yrs(0)
				Yrs.Close:Set Yrs = Nothing
				'删除原固顶主题ID
				TopstrinfoO = Replace(TopstrinfoO, Cstr(ID)&",", "")
				TopstrinfoO = Replace(TopstrinfoO, ","&Cstr(ID), "")
				TopstrinfoO = Replace(TopstrinfoO, Cstr(ID), "")
				If TopstrinfoN = "" Or Isnull(TopstrinfoN) Then
					TopstrinfoN = Cstr(ID)
				ElseIf TopstrinfoN = Cstr(ID) Then
					TopstrinfoN = TopstrinfoN
				ElseIf Instr(TopstrinfoN, ","&Cstr(ID)) > 0 Then
					TopstrinfoN = TopstrinfoN
				Else
					TopstrinfoN = TopstrinfoN & "," & Cstr(ID)
				End If
				'更新当前版面固顶信息及缓存
				Sql = "UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoO & "' WHERE BoardID = " & Dvbbs.Boardid
				Dvbbs.Execute(Sql)
				Dvbbs.ReloadBoardInfo(Dvbbs.Boardid)
				'更新新版面固顶信息及缓存
				Sql = "UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoN & "' WHERE Boardid = " & Newboard
				Dvbbs.Execute(Sql)
				Dvbbs.ReloadBoardInfo(Newboard)
			End If
			'shinzeal加入批量移动上传文件数据
			F_announceID = ID & "|"
			Dvbbs.Execute("UPDATE DV_Upfile SET F_Boardid = " & Newboard & " WHERE F_boardid = " & Dvbbs.Boardid & " AND F_AnnounceID LIKE '" & F_announceID & "%'")
			'shinzeal加入批量移动上传文件数据结束
		End If
	Next
	'更新版面和总数据
	Set Rs=Dvbbs.Execute("Select ParentStr from dv_Board Where BoardID="&Dvbbs.BoardID)
	UpdateBoardID=Rs(0) & "," & Dvbbs.BoardID
	Del_Math_Forum_Count ChildNum,i-1
	UpdateBoardID = Split(UpdateBoardID,",")
	For i = 0 To Ubound(UpdateBoardID)
		Dvbbs.ReloadBoardInfo(UpdateBoardID(i))
	Next

	Set Rs=Dvbbs.Execute("Select ParentStr from dv_Board Where BoardID="&Newboard)
	UpdateBoardID=Rs(0) & "," & Newboard
	Add_Math_Forum_Count ChildNum,i
	SplitUpBoardID = Split(UpdateBoardID,",")
	For i = 0 To Ubound(SplitUpBoardID)
		Dvbbs.ReloadBoardInfo(SplitUpBoardID(i))
	Next
	Dvbbs.Name="setup"
	Dvbbs.ReloadSetup

	LastCount(Dvbbs.BoardID)
	Math_Forum_Today(Dvbbs.BoardID)
	Dvbbs.ReloadBoardInfo(Dvbbs.BoardID)

	LastCount(Newboard)
	Math_Forum_Today(Newboard)
	Dvbbs.ReloadBoardInfo(Newboard)

	SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) Values ("&ID&","&Dvbbs.BoardID&",'More','"&Dvbbs.Membername&"','批量移动','"&IP&"',3)"
	Dvbbs.Execute(SQL)

	sucmsg="<li>帖子批量移动成功。<li>您的操作信息已经记录在案。"

	Dvbbs.Dvbbs_suc(sucmsg)
	Set Rs=Nothing
End Function

Function Topic_Batch_Istop

	Dim ID
	For I=1 To Request.Form("Announceid").Count
		ID=replace(Request.form("Announceid")(i),"'","")
		ID=CLng(ID)
		If IsSqlDataBase=1 Then
		Dvbbs.Execute("update dv_Topic Set Istop=1,LastPostTime=Dateadd(day,100,LastPostTime) Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
		else
		Dvbbs.Execute("update dv_Topic Set Istop=1,LastPostTime=Dateadd('d',100,LastPostTime) Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
		end if
	Next

	SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) Values ("&ID&","&Dvbbs.BoardID&",'More','"&Dvbbs.Membername&"','批量固顶','"&IP&"',4)"
	Dvbbs.Execute(SQL)
	sucmsg="<li>帖子批量固顶成功。<li>您的操作信息已经记录在案。"

	Dvbbs.ReloadBoardInfo(Dvbbs.BoardID)

	Dvbbs.Dvbbs_suc(sucmsg)

End Function

Function Topic_Batch_Isbest

	Dim ID
	For I=1 To Request.Form("Announceid").Count

		ID=replace(Request.form("Announceid")(i),"'","")
		ID=CLng(ID)
		Set Rs=Dvbbs.Execute("Select PostTable from dv_Topic Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
		TotalUseTable=Rs(0)

		Set Rs=Dvbbs.Execute("Select Top 1 * From "&TotalUseTable&" Where RootID="&ID&" Order By AnnounceID")
		If Not (Rs.Eof And Rs.Bof) Then

		SQL="insert into Dv_bestTopic (Title,BoardID,Announceid,Rootid,Postusername,Postuserid,Dateandtime,Expression) Values ('"&Dvbbs.Checkstr(Rs("Topic"))&"',"&Rs("BoardID")&","&Rs("Announceid")&","&Rs("Rootid")&",'"&Dvbbs.Checkstr(Rs("Username"))&"',"&Rs("Postuserid")&",'"&Rs("Dateandtime")&"','"&Rs("Expression")&"')"
		Dvbbs.Execute(SQL)
	
		Dvbbs.Execute("Update "&TotalUseTable&" Set Isbest=1 Where AnnounceID=" & Rs("AnnounceID"))
		Dvbbs.Execute("update dv_Topic Set Isbest=1 Where TopicID="&ID)

		End If

	Next

	SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) values ("&ID&","&Dvbbs.BoardID&",'more','"&Dvbbs.Membername&"','批量精华','"&IP&"',3)"
	Dvbbs.Execute(SQL)

	sucmsg="<li>帖子批量精华成功。<li>您的操作信息已经记录在案。"

	Dvbbs.Dvbbs_suc(sucmsg)
	Set Rs=Nothing

End Function

'更新指定论坛信息
Function LastCount(BoardID)

	Dim LastTopic,body,LastRootid,LastPostTime,LastPostUser
	Dim LastPost,uploadpic_n,Lastpostuserid,Lastid

	Set Rs=Dvbbs.Execute("Select Top 1 T.title,B.Announceid,B.Dateandtime,B.Username,B.Postuserid,B.Rootid From "&dvbbs.NowUseBBS&" b Inner Join dv_Topic T On b.rootid=T.TopicID Where B.BoardID="&BoardID&" Order By B.Announceid Desc")

	If Not(Rs.Eof And Rs.Bof) Then
		Lasttopic=replace(left(Rs(0),15),"$","")
		LastRootid=Rs(1)
		LastPostTime=Rs(2)
		LastPostUser=Rs(3)
		LastPostUserid=Rs(4)
		Lastid=Rs(5)
	Else
		LastTopic="无"
		LastRootid=0
		LastPostTime=now()
		LastPostUser="无"
		LastPostUserid=0
		Lastid=0
	End If
	Set Rs=Nothing

	LastPost=LastPostUser & "$" & LastRootid & "$" & LastPostTime & "$" & LastTopic & "$" & uploadpic_n & "$" & LastPostUserID & "$" & LastID & "$" & BoardID

	Dim SplitUpBoardID,SplitLastPost
	SplitUpBoardID=Split(UpdateBoardID,",")

	For i=0 to Ubound(SplitUpBoardID)

		Set Rs=Dvbbs.Execute("Select LastPost from dv_Board Where BoardID="&SplitUpBoardID(i))
		If Not (Rs.Eof And Rs.Bof) Then
			SplitLastPost=Split(Rs(0),"$")
			If SplitLastPost(1)="" or Isnull(SplitLastPost(1)) Then SplitLastPost(1)=0
			If Ubound(SplitLastPost)=7 and Clng(LastRootID)<>Clng(SplitLastPost(1)) Then
				Dvbbs.Execute("update dv_Board Set LastPost='"&LastPost&"' Where BoardID="&SplitUpBoardID(i))
				Dvbbs.ReloadBoardInfo(SplitUpBoardID(i))
			End If
		End If

	Next

	Set Rs=Nothing
End Function

Function Del_Math_Forum_Count(TopicNum,BBSNUM)

	Dvbbs.Execute("Update dv_setup Set Forum_postNum=Forum_postNum-"&TopicNum&",Forum_TopicNum=Forum_TopicNum-"&BBSNUM&"")
	Dvbbs.Execute("update dv_Board Set postnum=postnum-"&TopicNum&",topicnum=topicnum-"&BBSNUM&" Where BoardID In ("&UpdateBoardID&")")

End Function

Function Add_Math_Forum_Count(TopicNum,BBSNUM)

	Dvbbs.Execute("Update dv_setup Set Forum_postNum=Forum_postNum+"&TopicNum&",Forum_TopicNum=Forum_topicNum+"&BBSNUM&"")
	Dvbbs.Execute("update dv_Board Set postnum=postnum+"&TopicNum&",topicnum=topicnum+"&BBSNUM&" Where BoardID In ("&UpdateBoardID&")")

End Function


'今日帖子
Function Math_Forum_Today(BoardID)

	Dim MathForumToday
	if IsSqlDataBase=1 then
	Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where BoardID="&BoardID&" And Datediff(d,Dateandtime,"&SqlNowString&")=0")
	else
	Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where BoardID="&BoardID&" And Datediff('d',Dateandtime,"&SqlNowString&")=0")
	end if
	MathForumToday=Rs(0)
	Set Rs=Nothing
	If Isnull(MathForumToday) Then MathForumToday=0
	Dvbbs.Execute("update dv_Board Set Todaynum="&MathForumToday&" Where Boardid="&BoardID)

	if IsSqlDataBase=1 then
	Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where (Not BoardID in (444,777)) And Datediff(d,Dateandtime,"&SqlNowString&")=0")
	else
	Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where (Not BoardID in (444,777)) And Datediff('d',Dateandtime,"&SqlNowString&")=0")
	end if
	MathForumToday=Rs(0)
	Set Rs=Nothing
	If Isnull(MathForumToday) Then MathForumToday=0
	Dvbbs.Execute("Update dv_setup Set Forum_Todaynum="&MathForumToday)

End Function 
%>

⌨️ 快捷键说明

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