user_blogmanage.asp

来自「是个不错的文件代码,希望大家好好用,」· ASP 代码 · 共 730 行 · 第 1/2 页

ASP
730
字号
</div>
<input type="hidden" name="action" value="">
<input type="hidden" name="subjectid" value="">
</form>

<%
End Sub
%>

<%
Sub delblog()
    If id = "" Then
        oblog.adderrstr ("请指定要删除的" & tName)
        oblog.showusererr
        Exit Sub
    End If
    If InStr(id, ",") > 0 Then
        Dim n, i
        id = FilterIDs(id)
        n = Split(id, ",")
        For i = 0 To UBound(n)
            deloneblog (n(i))
        Next
    Else
        deloneblog (id)
    End If
	response.Write("<script>parent.get_draft();window.location='"&oblog.comeurl&"';</script>")
	response.Flush()
End Sub

Sub deloneblog(logid)
    logid = Int(logid)
    Dim uid, delname, rst, fso, sid,Scores
    Set rst = Server.CreateObject("adodb.recordset")
    If Not IsObject(conn) Then link_database
    rst.open "select userid,logfile,subjectid,logtype,scores,isdel from oblog_log where logid="&logid&wsql,conn,1,3
    If rst.Eof Then
        rst.Close
        Set rst = Nothing
        Exit Sub
    End If
	uid = rst(0)
	delname = Trim(rst(1))
	sid = rst(2)
	'清理图片记录,已取消
'	If rst("logtype") = 1 Then
'	    Call DeletePhotos(logid)
'	End If
	'真实域名需要重新整理文件数据
	'物理文件即时删除
	If true_domain = 1 And delname <> "" Then
	    If InStr(delname, "archives") Then
	        delname = Right(delname, Len(delname) - InStrRev(delname, "archives") + 1)
	    Else
	        delname = Right(delname, Len(delname) - InStrRev(delname, "/"))
	    End If
	    delname=oblog.l_udir&"/"&oblog.l_ufolder&"/"&delname
	    'response.write(delname)
	    'response.end
	End If
	If delname <> "" Then
	    Set fso = Server.CreateObject("Scripting.FileSystemObject")
	    If fso.FileExists(Server.MapPath(delname)) Then fso.DeleteFile Server.MapPath(delname)
	End If
	Scores=OB_IIF(rst("scores"),0)
	'回收与删除
	'response.Write(truedel)
	'response.End()
	If not truedel Then
		rst("isdel")=1
		rst.Update
	Else	
		rst.Delete
	End If
	rst.Close
	'--------------------------------------------
	'更新计数器
	If not truedel Then
		oblog.Execute ("Update oblog_comment Set isdel=1 where mainid=" & Int(logid)) 
		If Not isdraft Then
			oblog.Execute ("update oblog_user set log_count=log_count-1 where userid=" & uid)
			Call oblog.GiveScore("",-1*Abs(oblog.CacheScores(3)),"")
			oblog.Execute ("update oblog_subject set subjectlognum=subjectlognum-1 where subjectid=" & Int(sid))
		End if
	Else
		Call Tags_UserDelete(logid)	
		oblog.Execute ("delete from oblog_comment where mainid=" & Int(logid))
	End If
	'删除积分
	'--------------------------------------------
	Dim blog
	Set blog = New class_blog
	blog.userid = uid
	blog.Update_Subject uid
	blog.Update_index 0
	blog.Update_newblog (uid)
	Set blog = Nothing
	Set fso = Nothing
	Set rst = Nothing
End Sub

Sub delallblog()
    Dim uid, delname, rst, fso, sid,Scores,logid
    Set rst = Server.CreateObject("adodb.recordset")
    If Not IsObject(conn) Then link_database
    rst.open "select userid,logfile,subjectid,logtype,logid,isdel from oblog_log where isdel=1"&wsql,conn,1,3
    If rst.Eof Then
        rst.Close
        Set rst = Nothing
        Exit Sub
    End If
	While Not rst.eof 
		uid = rst(0)
		delname = Trim(rst(1))
		sid = rst(2)
		logid=rst(4)
		'清理图片记录,已取消
	'	If rst("logtype") = 1 Then
	'	    Call DeletePhotos(logid)
	'	End If
		'真实域名需要重新整理文件数据
		'物理文件即时删除
		If true_domain = 1 And delname <> "" Then
			If InStr(delname, "archives") Then
				delname = Right(delname, Len(delname) - InStrRev(delname, "archives") + 1)
			Else
				delname = Right(delname, Len(delname) - InStrRev(delname, "/"))
			End If
			delname=oblog.l_udir&"/"&oblog.l_ufolder&"/"&delname
			'response.write(delname)
			'response.end
		End If
		If delname <> "" Then
			Set fso = Server.CreateObject("Scripting.FileSystemObject")
			If fso.FileExists(Server.MapPath(delname)) Then fso.DeleteFile Server.MapPath(delname)
		End If
		'回收与删除
		'response.Write(truedel)
		'response.End()
		rst.Delete
		'--------------------------------------------
		Call Tags_UserDelete(logid)		
		rst.MoveNext
	Wend 
	rst.Close
	'更新计数器
	oblog.Execute ("delete from oblog_comment where isdel=1 ")
	'--------------------------------------------
	Dim blog
	Set blog = New class_blog
	blog.userid = uid
	blog.Update_Subject uid
	blog.Update_index 0
	blog.Update_newblog (uid)
	Set blog = Nothing
	Set fso = Nothing
	Set rst = Nothing
	response.Write("<script>parent.get_draft();window.location='"&oblog.comeurl&"';</script>")
	response.Flush()
End Sub

Sub moveblog()
    If id = "" Then
        oblog.adderrstr ("请指定要移动的" & tName)
        oblog.showusererr
        Exit Sub
    End If
    Dim subjectid
    subjectid = Trim(request("subjectid"))
    If subjectid = "" Then
        oblog.adderrstr ("请指定要移动的目标专题")
        oblog.showusererr
        Exit Sub
    Else
        subjectid = Int(subjectid)
    End If
    If InStr(id, ",") > 0 Then
        id = FilterIDs(id)
        sql="Update [oblog_log] set subjectid="&subjectid&" where logid in (" & id & ")"&wsql
    Else
        sql="Update [oblog_log] set subjectid="&subjectid&" where logid=" & Int(id) &wsql
    End If
    oblog.Execute sql
    Dim blog, rs1
    Set blog = New class_blog
    blog.userid = oblog.l_uId
    blog.Update_Subject oblog.l_uId
    'blog.update_index_subject 0, 0, 0, ""
    Set blog = Nothing
    Set rs = oblog.Execute("select subjectid from oblog_subject where userid=" & oblog.l_uId & " And Subjecttype=" & t)
    While Not rs.EOF
        Set rs1 = oblog.Execute("select count(logid) from oblog_log where oblog_log.subjectid=" & rs(0))
        oblog.Execute ("update oblog_subject set subjectlognum=" & rs1(0) & " where oblog_subject.subjectid=" & rs(0))
        rs.Movenext
    Wend
    Set rs = Nothing
    Set rs1 = Nothing
    oblog.showok "更新专题成功,需要重新发布首页,才可使专题统计准确!", ""
End Sub

Sub updatelog()
	Dim aIds,i,tuid,trs
	tuid = Trim(request("userid"))
    Response.Write ("<div id=""prompt""><ul>")
    id = FilterIds(Id)
    Dim blog, p, rs, uid
    Set blog = New class_blog
    aIds=Split(id,",")
    blog.progress_init
    p = 6
    blog.IsMulti="1"
    blog.progress Int(1 / p * 100), "生成静态" & tName & "文件"
    blog.progress Int(2 / p * 100), "生成" & tName & "文件"
    For i=0 To UBound(aIds)
		If tuid <>"" Then 
			tuid=CLng(tuid)
		Else 
			Set trs = Server.CreateObject("adodb.recordset")
			trs.open "SELECT userid,topic,abstract,logtext FROM oblog_log WHERE logid="&aIds(i)&wsql,conn,1,3
			If trs.eof Then 
				trs.close
				Exit Sub 
			Else 
				tuid=CLng(trs(0))
				Dim iChk1,iChk2,iChk3
				iChk1=oblog.chk_badword(trs(1))
				iChk2=oblog.chk_badword(trs(2))
				iChk3=oblog.chk_badword(trs(3))
				If iChk1=0.1 Or iChk2=0.1 Or iChk3=0.1 Then
					'记录
					oblog.execute("Update oblog_user Set isTrouble=isTrouble+1 Where userid=" & oblog.l_uid)
					'写系统日志
					Dim rstLog
					Set rstLog=Server.CreateObject("Adodb.Recordset")
					rstLog.Open "Select * From oblog_syslog Where 1=0",conn,1,3
					rstLog.AddNew
					rstLog("username")=oblog.l_uid
					rstLog("addtime")=Now
					rstLog("addip")=oblog.userip
					rstLog("desc")=oblog.l_uname & "(" & oblog.l_uid & ")" & " 于 " & Now() & " 自 " & oblog.userip & " 发布一篇文章包含以下禁止发表的关键字(文章被禁止发布):<br/><font color=red>日志标题:" & EncodeJP(trs(1)) & "<br/>可疑关键字:" & Right (oblog.errstr,Len(oblog.errstr)-1) & "</font>"
					rstLog("itype")=2 '用户日志来源
					rstLog.Update
					rstLog.Close
					oblog.errstr = ""
					oblog.adderrstr ("内容中存在绝对禁止的关键字,请注意您的言论!")
					
					'判断是否需要封禁
					If oblog.CacheConfig(13)<>"0" And  Trim(oblog.CacheConfig(13))<>"" Then
						Dim isRedirect
						rstLog.Open "Select istrouble,lockuser From oblog_user Where userid=" & oblog.l_uid,conn,1,3	
						If rstLog(0)>CInt(oblog.CacheConfig(13)) Then
							rstLog("lockuser")=1
							rstLog.Update
							rstLog.Close
							isRedirect = 1
						End If
					End If
					Set rstLog=Nothing
					If oblog.errstr <> "" Then 
						If isRedirect = 1 Then 
							response.write "<script language=JavaScript>alert('您发布的敏感字过多,已经被封禁!');top.location='index.asp';</script>"
							Response.End
						Else 
							response.Write "<script language=JavaScript>alert(""" & oblog.errstr & """);history.go(-1)</script>"
							Response.End
						End If 
					End If
				Elseif iChk1 >=1 Or iChk2>=1 Or iChk3>=1 Then
					log_isTrouble=1
				End If
				trs.update
				trs.close
				Set trs=Nothing
			End if
		End if
	    oblog.execute("update oblog_log set isdraft=0,isdel=0 where logid="&aIds(i)&wsql)
		oblog.Execute ("update oblog_user set log_count=log_count+1 where userid=" & tuid)
	    set rs=oblog.execute("select userid,subjectid from oblog_log where logid="&aIds(i)&wsql)
	    If Not rs.EOF Then
	        blog.userid = rs(0)	
	        blog.Update_log aIds(0), 1	
	        blog.Update_calendar (aIds(i))        	
	    Else
	        Set rs = Nothing
	        oblog.adderrstr ("无操作权限!")
	        oblog.showusererr
	    End If	
	   Next
	   '最后再进行首页/分类的更新
	   blog.progress Int(3 / p * 100), "生成首页"
	   blog.Update_index 0
	   blog.progress Int(4 / p * 100), "生成" & tName & "分类列表"
	   blog.Update_Subject oblog.l_uid
	   blog.progress Int(5 / p * 100), "生成新" & tName & "列表"
	   blog.Update_newblog oblog.l_uid
	   blog.progress Int(6 / p * 100), "发布" & tName & "完成"
	   Set rs = Nothing
	   Response.Clear
	   	response.Write("<script>parent.get_draft();</script>")
	   Response.Write ("<li><a href='user_blogmanage.asp'>&lt;&lt; 返回日志管理</a></li></ul></div>")
End Sub

'删除关联相册文件
Sub DeletePhotos(logid)
    Dim rst, fs, fsize, uid, imgsrc, fid
    Set rst = oblog.Execute("select file_path,file_size,userid,fileid from oblog_upfile where logid=" & logid)
    If Not rst.EOF Then
        Set fs = CreateObject("scripting.filesystemobject")
        Do While Not rst.EOF
        fsize = rst(1)
        uid = rst(2)
        imgsrc = rst(0)
        fid = rst(3)
        If fs.FileExists(Server.MapPath(imgsrc)) Then
            fs.DeleteFile (Server.MapPath(imgsrc))
        End If
        If InStr("jpg,bmp,gif,png,pcx", Right(imgsrc, 3)) > 0 Then '删除缩略图
            imgsrc = Replace(imgsrc, Right(imgsrc, 3), "jpg")
            imgsrc = Replace(imgsrc, Right(imgsrc, Len(imgsrc) - InStrRev(imgsrc, "/")), "pre" & Right(imgsrc, Len(imgsrc) - InStrRev(imgsrc, "/")))
            If fs.FileExists(Server.MapPath(imgsrc)) Then
                fs.DeleteFile Server.MapPath(imgsrc)
            End If
        End If
        oblog.Execute ("delete from [oblog_upfile] where fileid=" & fid)
        oblog.execute("update [oblog_user] set user_upfiles_size=user_upfiles_size-"&fsize&",user_upfiles_num=user_upfiles_num-1 where userid="&uid)
        rst.Movenext
        Loop
        Set fs = Nothing
        Set rst = Nothing
    End If
End Sub

Sub BackUp()
%>
<body  style="overflow:hidden;" scroll="no">
<form name="oblogform" method="post" action="user_logzip.asp?t=<%=t%>">
	<table class='win_update_table' align='center' border='0' cellpadding='0' cellspacing='1'>
		<tr>
			<td colspan='2' class='win_update_table_top'>日志备份</td>
		</tr>
		<tr>
			<td colspan='2'>请选择日志备份的起止日期:</td>
		</tr>
		<tr>
			<td class='win_update_table_td'>开始日期:</td>
			<td><%oblog.type_dateselect dateadd("m",-1,date),1%></td>
		</tr>
		<tr>
			<td class='win_update_table_td'>结束日期:</td>
			<td><%oblog.type_dateselect date(),2%>
			</td>
		</tr>
		<tr>
			<td class='win_update_table_td'>备份格式:</td>
			<td><input name="filetype" type="radio" value="txt" checked>TXT纯文本 <input type="radio" name="filetype" value="htm">HTM网页 <input type="radio" name="filetype" value="xml">XML
			</td>
		</tr>
		<tr>
			<td colspan='2' align="center"><input type="submit" value=" 导出数据 " /></td>
		</tr>
	</table>
</form>
</body>
<%end sub
%>

⌨️ 快捷键说明

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