提问者:52fei - 童生≈一级已解决
要命的引用通告!!!!谁给解决下啊!!!
悬赏分:10 - 提问时间:2008-5-10 16:06:55 - 阅读次数:
我用的是花香7.6的改进版做CMS,虽然有有些缺点,但总的感觉一直都不错。
直到几天前,网站终于决堤了。
罪魁祸首就是单用户blog里面的引用通告。
打开blog下面引用通告里全是广告。
[IMG]http://photo1.bababian.com/upload11/20080510/E0D543561421F35D0F5C51DEA2019024_500.jpg[/IMG]
第一天我整理网站的时候发现有好几个blog里多了几个引用通告,而且全都是广告。感觉没有什么大不了,删了就是了。[img]http://www.meego.cn/image/1210405880_4.gif[/img]
第二天第三天。。。。。。。。。。。。
广告越来越多,最多的一个题目下居然有90多个引用通告,最少的也有20多个。[IMG]http://image5.poco.cn/mypoco/myphoto/20080510/16/5622813200805101558452201336210426_001_165.jpg[/IMG]
终于感觉到了危机了。不停的点不停的删。神啊!!!鬼知道我删了多少垃圾引用通告!!![IMG]http://image5.poco.cn/mypoco/myphoto/20080510/16/5622813200805101558452201336210426_002_165.jpg[/IMG]
几天那东西又来骚扰了,我今天把验证码都改了,估计也不会多大用(改过后的验证码也是最简单的那种)。
希望高手给个方法啊。增加集体删除,以及禁止引用通告。
[IMG]http://www.meego.cn/image/1210405880_1.gif[/IMG]
问题补充提高悬赏无满意答案举行投票撤消问题我来回答评论举报
回答者:jacky - 童生≈一级 - 05-22 11:18最佳答案
我已经成功添加了批量删除博客引用的功能。并能成功批量删除引用,这一切都在后台操作。。。这也要感谢心窗提供博客的后台评论功能,借鉴后实现的。现在把添加删除引用的代码发出:在admin/admin_blog_art.asp
在31-36行是以下代码
if request.form("operation")="plDEL" then
num=request.form("id").Count
for i=1 to num
  Conn.ExeCute("delete from b_review WHERE comm_ID="&request.form("id")(i))
next
end if
在ENF if之后添加以下代码
if request.form("operation")="yyDEL" then
num=request.form("id").Count
for i=1 to num
  Conn.ExeCute("delete from b_Trackback WHERE tb_ID="&request.form("id")(i))
next
end if

在BLOG评论管理之后(约在248行,有如下代码<%
Response.Write(MultiPages)
Response.Write("</table>")
end if
)添加
if request.querystring("action")="yy" then
Response.Write("<table align=""center"" width=""98%"" border=""1"" cellspacing=""0"" cellpadding=""4"" class=hxcmsbk style=""border-collapse: collapse"">")
%>
<tr class=hxcmsss>
   <td colspan="4">BLOG引用管理</td>
</tr>
<%
Url_Add="?action=yy&"
If Request.QueryString("Page")<>"" Then
   Curpage=Request.QueryString("Page")
   If IsInteger(Curpage)=False OR Curpage<0 Then Curpage=1
Else
   Curpage=1
End If
   sql="select * from b_Trackback order by tb_ID desc"
   set rs=server.createobject("adodb.recordset")
   rs.open sql,conn,1,1
if rs.eof and rs.bof then
  Response.Write("<tr align=""center""><td class=hxcmsds colspan=4>当前没有引用!</td></tr>")
Else
   rs.PageSize=adflperpage
   rs.AbsolutePage=CurPage
   art_Nums=rs.RecordCount
   MultiPages="<tr><td class=hxcmsqs colspan=""4"" align=""center"">共有引用:"&art_Nums&"篇。&nbsp;&nbsp;"&MultiPage(art_Nums,adflperpage,CurPage,Url_Add)&"</td></tr>"
%>
   <tr class=hxcmsqs align="center"> 
      <td width="8%">选中</td>
      <td width="20%">标题</td>
      <td width="12%">作者</td>
      <td width="12%">发表日期</td>
   </tr>
<form name=form method=post action="<%=Url_Add%>">
<script language="javascript">
function CheckAll(form)
{
for (var i=0;i<form.elements.length;i++)
{
var e = form.elements[i];
if (e.name != ''''chkall'''')
e.checked = form.chkall.checked;
}
}
</script>
<%
Do Until Rs.EOF OR j=adflperpage
%>
    <tr class=hxcmsds>
       <td align="center"><input Name=id type=checkbox Value=<%=rs("tb_ID")%>></td>
       <td><%=rs("tb_Title")%></a></td>
       <td align="center"><%=rs("tb_URL")%></td>
       <td align="center"><%=datevalue(rs("tb_PostTime"))%></td>
    </tr>
<%
j=j+1
rs.movenext
loop
end if%>
     <tr class=hxcmsqs>
         <td class=stbkcmsds colspan="4">
            <input type=hidden value=yyDEL name=operation>
    <input type="checkbox" name="chkall" onclick="CheckAll(this.form)" value="ON">选中本页所有 <input type=submit value=批量删除 onClick="return confirm(''''确定删除选中的评论吗?'''');" class="button"></td>
      </tr></form>
<%
Response.Write(MultiPages)
Response.Write("</table>")
end if

并修改admin.asp
  <TR>
     <td width="25%"></td><TD height=25 width="75%"><a target="main" href=admin_blog_art.asp?action=pl><img src="../img/left_fold2.gif" alt="" border="0"> 博客评论管理</a></TD>
  </TR>
  <TR>
    <td width="25%"></td><TD height=25 width="75%"><a target="main" href=admin_blog_art.asp?action=yy><img src="../img/left_fold2.gif" alt="" border="0"> 博客引用管理</a></TD>
  </TR>
提问者对答案的评价:
谢谢
共1条其他回答
可以通过清空数据库引用通告表来实现批量删除,我就是这么干的……
修改答复回答者:mike5421 - 童生≈一级 - 05-20 18:50 ┆ 评论举报

Open LoginBar