📄 alldel.asp
字号:
Dvbbs.Execute("delete from Dv_UpFile where "&delboardida&" F_UserID="&PostUserID)
'该用户发表的主题、连带跟贴一起删除
set rs=Dvbbs.Execute("select topicid,posttable from dv_topic where "&delboardid&" PostUserID="&PostUserID)
do while not rs.eof
Dvbbs.Execute("Delete From "&rs(1)&" where rootid="&rs(0))
rs.movenext
loop
Set Rs = Dvbbs.Execute("SELECT COUNT(TopicID) FROM Dv_Topic WHERE " & Delboardid & " PostUserID = " & PostUserID)
Dnum = Rs(0)
Set Rs=Nothing
Dvbbs.Execute("Delete From dv_topic where "&delboardid&" PostUserID="&PostUserID)
if isnull(titlenum) then titlenum=0
sql="update [dv_user] set userpost=userpost-"&titlenum&",userWealth=userWealth-"&titlenum*Dvbbs.Forum_user(3)&",userEP=userEP-"&titlenum*Dvbbs.Forum_user(8)&",userCP=userCP-"&titlenum*Dvbbs.Forum_user(13)&" where UserID="&PostUserID
Dvbbs.Execute(sql)
Response.write "该用户的" & Dnum & "个主题及跟帖删除成功!<BR>建议您到更新论坛数据中更新一下论坛数据,或者<a href=alldel.asp>返回</a>"
Response.Flush
End Sub
'删除指定日期内帖子
Sub Alldel()
Dim TimeLimited,Delboardid,DelSql,rs,i
Dim Dnum '删除帖子数 2005-10-30 Dv.Yz
If Request("delboardid")="0" Then
'founderr=true
Errmsg=ErrMsg + "<BR><li>非法的版面参数。"
Exit Sub
Elseif Request("delboardid")="all" Then
Delboardid=""
Else
'Delboardid="And boardid="&Clng(Request("delboardid"))
Delboardid=" boardid="&Clng(Request("delboardid"))&" and "
End If
TimeLimited=Request.Form("TimeLimited")
If Not Isnumeric(TimeLimited) Then
'founderr=true
Errmsg=ErrMsg + "<BR><li>非法的参数。"
Exit Sub
Else
For i=0 to Ubound(allposttable)
If IsSqlDataBase=1 Then
Set Rs = Dvbbs.Execute("SELECT COUNT(AnnounceID) FROM " & Allposttable(i) & " WHERE " & Delboardid & " Datediff(d, DateAndTime, " & SqlNowString & ") > " & TimeLimited)
Dnum = Rs(0)
Dvbbs.Execute("DELETE FROM "&Allposttable(i)&" WHERE "&Delboardid&" Datediff(d,DateAndTime,"&SqlNowString&")>"&TimeLimited)
Else
Set Rs = Dvbbs.Execute("SELECT COUNT(AnnounceID) FROM " & Allposttable(i) & " WHERE " & Delboardid & " Datediff('d', DateAndTime, " & SqlNowString & ") > " & TimeLimited)
Dnum = Rs(0)
Dvbbs.Execute("DELETE FROM "&Allposttable(i)&" WHERE "&Delboardid&" Datediff('d',DateAndTime,"&SqlNowString&")>"&TimeLimited)
End if
Response.Write Allposttable(i)&"表" & Dnum & "张帖子删除完成!<BR>"
Response.Flush
Next
If IsSqlDataBase=1 Then
Set Rs = Dvbbs.Execute("SELECT COUNT(TopicID) FROM Dv_topic WHERE " & Delboardid & " Datediff(d, DateAndTime, " & SqlNowString & ") > " & TimeLimited)
Dnum = Rs(0)
Dvbbs.Execute("DELETE FROM Dv_topic WHERE "&Delboardid&" Datediff(d,DateAndTime,"&SqlNowString&")>"&TimeLimited)
Dvbbs.Execute("delete from dv_besttopic where "&Delboardid&" datediff(d,DateAndTime,"&SqlNowString&")>"&TimeLimited)
Else
Set Rs = Dvbbs.Execute("SELECT COUNT(TopicID) FROM Dv_topic WHERE " & Delboardid & " Datediff('d', DateAndTime, " & SqlNowString & ") > " & TimeLimited)
Dnum = Rs(0)
Dvbbs.Execute("DELETE FROM Dv_topic WHERE "&Delboardid&" Datediff('d',DateAndTime,"&SqlNowString&")>"&TimeLimited)
Dvbbs.Execute("DELETE FROM Dv_besttopic WHERE "&Delboardid&" Datediff('d',DateAndTime,"&SqlNowString&") > "&TimeLimited)
End If
Response.Write "Dv_Topic表" & Dnum & "个主题删除完成!<BR>"
Response.Flush
End if
Response.Write "删除成功!<BR>建议您到更新论坛数据中更新一下论坛数据,或者<a href=alldel.asp>返回</a>"
Response.Flush
End sub
sub alldelTopic()
Dim TimeLimited,delboardid,rs
Dim Dnum '删除帖子数 2005-10-30 Dv.Yz
if request("delboardid")="0" then
'founderr=true
Errmsg=ErrMsg + "<BR><li>非法的版面参数。"
exit sub
elseif request("delboardid")="all" then
delboardid=""
else
delboardid=" boardid="&request("delboardid")&" and "
end if
TimeLimited=request.form("TimeLimited")
if not isnumeric(TimeLimited) then
'founderr=true
Errmsg=ErrMsg + "<BR><li>非法的参数。"
exit sub
else
if IsSqlDataBase=1 then
set rs=Dvbbs.Execute("select Topicid,PostTable from dv_topic where "&delboardid&" datediff(d,DateAndTime,"&SqlNowString&")>"&TimeLimited&" and Child=0")
else
set rs=Dvbbs.Execute("select Topicid,PostTable from dv_topic where "&delboardid&" datediff('d',DateAndTime,"&SqlNowString&")>"&TimeLimited&" and Child=0")
end if
do while not rs.eof
Dvbbs.Execute("Delete From "&rs(1)&" where rootid="&rs(0))
Dvbbs.Execute("delete from dv_besttopic where rootid="&rs(0))
rs.movenext
loop
if IsSqlDataBase=1 then
Set Rs = Dvbbs.Execute("SELECT COUNT(TopicID) FROM Dv_Topic WHERE " & Delboardid & " DATEDIFF(d, DateAndTime, " & SqlNowString & ") > " & TimeLimited & " AND Child = 0")
Dnum = Rs(0)
Dvbbs.Execute("Delete From dv_topic where "&delboardid&" datediff(d,DateAndTime,"&SqlNowString&")>"&TimeLimited&" and Child=0")
else
Set Rs = Dvbbs.Execute("SELECT COUNT(TopicID) FROM Dv_Topic WHERE " & Delboardid & " DATEDIFF('d', DateAndTime, " & SqlNowString & ") > " & TimeLimited & " AND Child = 0")
Dnum = Rs(0)
Dvbbs.Execute("Delete From dv_topic where "&delboardid&" datediff('d',DateAndTime,"&SqlNowString&")>"&TimeLimited&" and Child=0")
end if
set rs=nothing
end if
response.write "Dv_Topic表" & Dnum & "个主题删除成功!<BR>建议您到更新论坛数据中更新一下论坛数据,或者<a href=alldel.asp>返回</a>"
end sub
Sub DelUser()
Dim TimeLimited,rs,sql,i
Dim Dnum '删除用户数 2005-10-30 Dv.Yz
TimeLimited=request.form("TimeLimited")
if TimeLimited="all" then
response.Write "算了吧,想开点吧,这样做会连管理员都删掉的!"
else
if IsSqlDataBase=1 then
set rs=Dvbbs.Execute("select userid,username,usergroupid from [dv_user] where datediff(d,LastLogin,"&SqlNowString&")>"&TimeLimited&"")
else
set rs=Dvbbs.Execute("select userid,username,usergroupid from [dv_user] where datediff('d',LastLogin,"&SqlNowString&")>"&TimeLimited&"")
end if
'shinzeal加入删除用户的同时自动删除其帖子(包括精华贴)的功能
do while not rs.eof
If rs(2)>3 then
for i=0 to ubound(allposttable)
sql="Delete From "&allposttable(i)&" where postuserid="&rs(0)
Dvbbs.Execute(sql)
next
Dvbbs.Execute("delete from dv_besttopic where postuserid="&rs(0))
Dvbbs.Execute("Delete From Dv_UpFile Where F_UserID="&rs(0))
Dvbbs.Execute("Delete From Dv_Message Where Sender='"&Replace(Rs(1),"'","''")&"'")
Dvbbs.Execute("Delete From Dv_Friend Where F_UserID="&rs(0))
Dvbbs.Execute("Delete From Dv_BookMark Where UserName='"&Replace(Rs(1),"'","''")&"'")
dim rrs
set rrs=Dvbbs.Execute("select topicid,posttable from dv_topic where postuserid="&rs(0))
do while not rrs.eof
Dvbbs.Execute("Delete From "&rrs(1)&" where rootid="&rrs(0))
rrs.movenext
loop
set rrs=nothing
Dvbbs.Execute("Delete From dv_topic where postuserid="&rs(0))
end if
rs.movenext
loop
set rs=nothing
if IsSqlDataBase=1 then
Set Rs = Dvbbs.Execute("SELECT COUNT(UserID) FROM Dv_User WHERE Datediff(d, LastLogin, " & SqlNowString & ") > " & TimeLimited & "")
Dnum = Rs(0)
Dvbbs.Execute("delete from [dv_user] where datediff(d,LastLogin,"&SqlNowString&")>"&TimeLimited&"")
else
Set Rs = Dvbbs.Execute("SELECT COUNT(UserID) FROM Dv_User WHERE Datediff('d', LastLogin, " & SqlNowString & ") > " & TimeLimited & "")
Dnum = Rs(0)
Dvbbs.Execute("delete from [dv_user] where datediff('d',LastLogin,"&SqlNowString&")>"&TimeLimited&"")
end if
end if
response.write "删除" & Dnum & "个用户成功!<BR>建议您到更新论坛数据中更新一下论坛数据,或者<a href=alldel.asp>返回</a>"
Response.Flush
End Sub
Sub MoveUserTopic()
Dim PostUserID,rs,i
If Not Isnumeric(Request("Inboardid")) Then
Response.Write "错误的版面参数。"
Exit Sub
End If
If Not Isnumeric(Request("Outboardid")) Then
Response.Write "错误的版面参数。"
Exit Sub
End If
If Request("Username") = "" Then
Response.Write "请填写用户名。"
Exit Sub
End If
If Cint(Request("Outboardid")) = Cint(Request("Inboardid")) Then
Response.Write "不能在相同版面进行移动操作!"
Exit Sub
End If
Set Rs = Dvbbs.Execute("Select UserID From Dv_User Where UserName = '" & Replace(Request("Username"), "'", "''") & "'")
If Rs.Eof And Rs.Bof Then
Response.Write "目标用户名并不存在,请重新输入!"
Exit Sub
End If
PostUserID = Rs(0)
For i = 0 To Ubound(Allposttable)
Dvbbs.Execute("UPDATE " & Allposttable(i) & " SET Boardid = " & Request("Inboardid") & " WHERE Boardid = " & Request("Outboardid") & " AND PostUserID = " & PostUserID)
Next
Rs.Close:Set Rs = Nothing
REM 修改批量移动方式 2004-4-25 Dvbbs.YangZheng
SET Rs = Dvbbs.Execute("SELECT Topicid, Posttable, Istop FROM Dv_Topic WHERE Boardid = " & Request("Outboardid") & " AND PostUserID = " & PostUserID)
Rem Topicid:0, Posttable:1, Istop:2
If Not(Rs.Eof And Rs.Bof) Then
Sql = Rs.GetRows(-1)
Rs.Close:Set Rs = Nothing
Dim Yrs, TopstrinfoN, TopstrinfoO
For i = 0 To Ubound(Sql,2)
Dvbbs.Execute("UPDATE " & Sql(1,i) & " SET Boardid = " & Request("Inboardid") & " WHERE Rootid = " & Sql(0,i))
Dvbbs.Execute("UPDATE Dv_Topic SET Boardid = " & Request("Inboardid") & " WHERE Boardid = " & Request("Outboardid") & " AND Topicid = " & Sql(0,i))
If Sql(2,0) > 0 Then
'读取新旧版面的固顶信息
Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Request("Outboardid"))
TopstrinfoO = Yrs(0)
Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Request("Inboardid"))
TopstrinfoN = Yrs(0)
Yrs.Close:Set Yrs = Nothing
'删除原固顶主题ID
TopstrinfoO = Replace(TopstrinfoO, Cstr(Sql(0,i))&",", "")
TopstrinfoO = Replace(TopstrinfoO, ","&Cstr(Sql(0,i)), "")
TopstrinfoO = Replace(TopstrinfoO, Cstr(Sql(0,i)), "")
If TopstrinfoN = "" Or Isnull(TopstrinfoN) Then
TopstrinfoN = Cstr(Sql(0,i))
ElseIf TopstrinfoN = Cstr(Sql(0,i)) Then
TopstrinfoN = TopstrinfoN
ElseIf Instr(TopstrinfoN, ","&Cstr(Sql(0,i))) > 0 Then
TopstrinfoN = TopstrinfoN
Else
TopstrinfoN = TopstrinfoN & "," & Cstr(Sql(0,i))
End If
'更新当前版面固顶信息及缓存
Dvbbs.Execute("UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoO & "' WHERE BoardID = " & Request("Outboardid"))
'更新新版面固顶信息及缓存
Dvbbs.Execute("UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoN & "' WHERE Boardid = " & Request("Inboardid"))
End If
Next
Dvbbs.ReloadBoardInfo(Request("Outboardid")&","&Request("Inboardid"))
End If
Dvbbs.Execute("UPDATE Dv_Besttopic SET Boardid = " & Request("Inboardid") & " WHERE Boardid = " & Request("Outboardid") & " AND PostUserID = " & PostUserID)
'shinzeal加入移动上传文件数据
Dvbbs.Execute("UPDATE Dv_Upfile SET F_Boardid = " & Request("Inboardid") & " WHERE F_Boardid = " & Request("Outboardid") & " AND F_UserID = " & PostUserID)
Response.Write "移动成功!<br>在“重计论坛数据和修复”中“更新论坛数据”。"
End Sub
Sub MoveDateTopic()
Dim TimeLimited,rs,sql,i
TimeLimited = Request.Form("TimeLimited")
If Not Isnumeric(TimeLimited) Then
Response.Write "错误的日期参数。"
Exit Sub
Else
TimeLimited = Clng(TimeLimited)
End If
If Not Isnumeric(Request("Inboardid")) Then
Response.Write "错误的版面参数。"
Exit Sub
End If
If Not Isnumeric(Request("Outboardid")) Then
Response.Write "错误的版面参数。"
Exit Sub
End If
If Cint(Request("Outboardid")) = Cint(Request("Inboardid")) Then
Response.Write "不能在相同版面进行移动操作!"
Exit Sub
End If
Rem 修改移动方式 2004-4-25 Dvbbs.YangZheng
Sql = "SELECT PostTable,Isbest,IsTop,TopicID FROM Dv_Topic WHERE Boardid = " & Request("Outboardid")
If TimeLimited > 0 Then
If IsSqlDataBase = 1 Then
Sql = Sql & " AND DATEDIFF(d, DateAndTime, " & SqlNowString & ") >= " & TimeLimited
Else
Sql = Sql & " AND DATEDIFF('d', DateAndTime, " & SqlNowString & ") >= " & TimeLimited
End If
End If
Rem PostTable:0, Isbest:1, IsTop:2, TopicID:3
Set Rs = Dvbbs.Execute(Sql)
Dim Sqlstr
Dim Yrs, TopstrinfoN, TopstrinfoO
If Not(Rs.Eof And Rs.Bof) Then
Sql = Rs.Getrows(-1)
Rs.Close:Set Rs = Nothing
For i = 0 To Ubound(Sql,2)
Sqlstr = "UPDATE " & Sql(0,i) & " SET BoardID = " & Request("Inboardid") & " WHERE BoardID = " & Request("Outboardid") & " AND RootID = " & Clng(Sql(3,i))
Dvbbs.Execute(Sqlstr)
Dvbbs.Execute("UPDATE Dv_Topic SET BoardID = " & Request("Inboardid") & " WHERE BoardID = " & Request("Outboardid") & " AND TopicID = " & Sql(3,i))
If Sql(1,i) = 1 Then
Dvbbs.Execute("UPDATE Dv_Besttopic Set BoardID = " & Request("Inboardid") & " WHERE BoardID = " & Request("Outboardid") & " AND RootID = " & Sql(3,i))
End If
If Sql(2,i) > 0 Then
'读取新旧版面的固顶信息
Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Request("Outboardid"))
TopstrinfoO = Yrs(0)
Set Yrs = Dvbbs.Execute("SELECT BoardTopStr From Dv_Board Where Boardid = " & Request("Inboardid"))
TopstrinfoN = Yrs(0)
Yrs.Close:Set Yrs = Nothing
'删除原固顶主题ID
TopstrinfoO = Replace(TopstrinfoO, Cstr(Sql(3,i))&",", "")
TopstrinfoO = Replace(TopstrinfoO, ","&Cstr(Sql(3,i)), "")
TopstrinfoO = Replace(TopstrinfoO, Cstr(Sql(3,i)), "")
If TopstrinfoN = "" Or Isnull(TopstrinfoN) Then
TopstrinfoN = Cstr(Sql(3,i))
ElseIf TopstrinfoN = Cstr(Sql(3,i)) Then
TopstrinfoN = TopstrinfoN
ElseIf Instr(TopstrinfoN, ","&Cstr(Sql(3,i))) > 0 Then
TopstrinfoN = TopstrinfoN
Else
TopstrinfoN = TopstrinfoN & "," & Cstr(Sql(3,i))
End If
'更新原版面固顶信息及缓存
Sqlstr = "UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoO & "' WHERE BoardID = " & Request("Outboardid")
Dvbbs.Execute(Sqlstr)
'更新新版面固顶信息及缓存
Sqlstr = "UPDATE Dv_Board SET BoardTopStr = '" & TopstrinfoN & "' WHERE Boardid = " & Request("Inboardid")
Dvbbs.Execute(Sqlstr)
End If
Next
Dvbbs.ReloadBoardInfo(Request("Outboardid")&","&Request("Inboardid"))
End If
Response.Write "移动成功!<br>在“重计论坛数据和修复”中“更新论坛数据”。"
End Sub
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -