GVKun编程网logo

自定义表单SQL命令行批量删除垃圾留言(sql 批量删除表)

34

这篇文章主要围绕自定义表单SQL命令行批量删除垃圾留言和sql批量删除表展开,旨在为您提供一份详细的参考资料。我们将全面介绍自定义表单SQL命令行批量删除垃圾留言的优缺点,解答sql批量删除表的相关问

这篇文章主要围绕自定义表单SQL命令行批量删除垃圾留言sql 批量删除表展开,旨在为您提供一份详细的参考资料。我们将全面介绍自定义表单SQL命令行批量删除垃圾留言的优缺点,解答sql 批量删除表的相关问题,同时也会为您带来6系统留言总是收到垃圾留言,怎么屏蔽啊、activiti自定义流程之自定义表单(三):表单列表及预览和删除、asp有效防止网站留言板出现垃圾留言/评论实现思路、asp防止垃圾留言代码的实用方法。

本文目录一览:

自定义表单SQL命令行批量删除垃圾留言(sql 批量删除表)

自定义表单SQL命令行批量删除垃圾留言(sql 批量删除表)

 

自定义表单SQL命令行批量删除垃圾留言

1.每天被恶意留言困扰,花费大量的时间去清理却效果不理想,对于没有能力做二开并且靠纯手工删除留言的新手来讲是一个大麻烦。

2.大家都知道织梦的留言内容是存在数据库里的,而数据库的内容是可以批量删除的。

3.下面是批量删除垃圾留言的办法,前提是必须将有用的留言先审核完成。

数据库删除留言前准备:

1、分析表结构。这个很重要,这是解决问题的前提。登录网站后台-系统参数-SQL命令行工具,找到dede_diyform1(),然后查看表结构,找到以下`ifcheck` smallint(6) NOT NULL default ‘1’,ifcheck就是我们解决问题的关键。

2、分析ifcheck的属性。在数据库里ifcheck的属性有两种,0或1,在织梦数据库0表示未审核的留言,1则表示审核显示的留言。select * from `dede_diyform1` where ifcheck=1 order by id desc,这个命令就是查看审核通过的留言。相反则是用select * from `dede_diyform1` order by id desc,显示全部留言,包括未审核的留言。

3、SQL命令一键删除。先确定为审核留言内容,select * from dede_diyform1 where ifcheck=0,显示结果无没有审核的内容。确定以后删除未审核留言,在SQL命令里输入delete from dede_diyform1 where ifcheck=0,SQL命令一键删除未审核留言就实现 。

4、如果有修改表前缀的需要将dede修改成你自己的表前缀否则该SQL语句将运行无效。

本文章网址:http://www.ppssdd.com/code/2341.html。转载请保留出处,谢谢合作!

6系统留言总是收到垃圾留言,怎么屏蔽啊

6系统留言总是收到垃圾留言,怎么屏蔽啊

我也收到过,我直接手动删了 ,也不是很多

老铁小编回答:

没用过6系统呢

喜欢 (0)or分享 (0)

activiti自定义流程之自定义表单(三):表单列表及预览和删除

activiti自定义流程之自定义表单(三):表单列表及预览和删除

自定义表单创建成功,要拿到activiti中使用,自然需要让创建activiti流程的人能够看到究竟有那些表单可用,各表单的效果是什么,因此就需要一个展示页面并提供预览功能。同时,增删改查四大功能是基础,自然都是需要的,我这里没有做表单修改,只简单的实现了删除。


我下载的ueditor插件中有基本的创建和预览代码,因此我就参考这些再度修改,而后实现简单的表达列表和预览、删除功能。

一、 表单列表页面formList.html:
[html]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1.    <!DOCTYPE HTML>  
  2. <html>  
  3.  <head>  
  4.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5.     <meta name="viewport" content="width=device-width, initial-scale=1.0">  
  6.     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">  
  7.     <script type="text/javascript" charset="utf-8" src="../js/jquery-1.7.2.min.js?2023"></script>  
  8.     <link href="../my_css/a.css" rel="stylesheet" type="text/css" />  
  9.  </head>  
  10. <body style="margin:0">  
  11. <!-- fixed navbar -->  
  12. <!-- Docs page layout -->  
  13. <script type="text/javascript" charset="utf-8" src="../my_js/formList.js"></script>  
  14. <div style="width:100%;height:60px;background-color:#ccf;border:1px solid blue;text-decoration:none">  
  15.        
  16.      <img src="../images/activiti.png" style="width:20%;height:98%;overflow:hidden;float:left"/>  
  17.        
  18.      <ul style="margin-left:30px;margin-top:10px; padding: 0px; font-size: 32px; width:60%;overflow:hidden;float:left">  
  19.         <li><a href="#" onclick="toAdd();">新增表单</a></li>  
  20.         <li> | </li>  
  21.         <li><a href="#" onclick="formList();">表单列表</a></li>  
  22.         <li> | </li>  
  23.         <li><a href="#" onclick="createModel();">创建模型</a></li>  
  24.      </ul>  
  25. </div>  
  26. <div id="idv1" style="width:100%;position: absolute;height:auto">  
  27.    <div id="formDiv" style="width:88%;height:auto;position:relative;float:left;margin-left:10px;margin-top:10px;">  
  28.       <table id="ta1" style="width:100%;height:auto;text-align:center" border="1" cellpadding="0" cellspacing="0">  
  29.         <tr style="background-color:#ccc">  
  30.            <td style="width:100px;height:30px;font-size:25px">表单Id</td>  
  31.            <td style="width:100px;height:30px;font-size:25px">表单标题</td>  
  32.            <td style="font-size:25px">表单代码</td>  
  33.            <td style="width:100px;height:30px;font-size:25px">操作表单</td>  
  34.         </tr>  
  35.       </table>  
  36.    </div>  
  37. </div>  
  38.   
  39.   
  40. <div id="div2" style="top:100px;left:20%;width:60%;height:400px;position:absolute;background-color:grey;display:none;">  
  41.      
  42. </div>  
  43. </body>  
  44. </html>  


二、 js文件formList.js:
 
[javascript]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. function toAdd(){  
  2.     window.location.href="../";   
  3. };  
  4. function formList(){  
  5.     window.location.href="./formList.html";   
  6. };  
  7. $(document).ready(function(){  
  8. $.ajax({  
  9.     type: ''POST'',  
  10.     url : ''/webFormTest/findForms.do'',  
  11.     dataType : ''json'',  
  12.     async:false,  
  13.     success : function(data){  
  14.         //alert("保存成功");  
  15.         console.log(data);  
  16.         for(var i=0;i<data.length;i++){  
  17.             var form=data[i];  
  18.             console.log(form);  
  19.                 var tables = document.getElementById("ta1");  
  20.                 var tr = document.createElement("tr");  
  21.                 var td0=document.createElement("td");  
  22.                 var td1=document.createElement("td");  
  23.                 var td2=document.createElement("td");  
  24.                 var td3=document.createElement("td");  
  25.                 td0.innerText=form.formId;  
  26.                 td1.innerText=form.formType;  
  27.                 td2.innerText=form.form;  
  28.                 td2.setAttribute("id",i);  
  29.                 var a1=document.createElement("a");  
  30.                 var node1 = document.createTextNode(" 删除  ");  
  31.                 a1.appendChild(node1);  
  32.                 a1.setAttribute("href","#");  
  33.                 a1.setAttribute("id","a1"+i);  
  34.                 a1.onclick=function(){  
  35.                     var id=this.id;  
  36.                     var id1=id.substring(2);  
  37.                     var formId=data[id1].formId;  
  38.                     //console.log(document.getElementById(id).innerText);   
  39.                     //console.log();  
  40.                     //先删除,后跳转  
  41.                     $.ajax({  
  42.                         type: ''POST'',  
  43.                         url : ''/webFormTest/deleteForm.do'',  
  44.                         dataType : ''json'',  
  45.                         async:false,  
  46.                         data:{"formId":formId},  
  47.                         success : function(){  
  48.                             window.location.href="./formList.html";  
  49.                         }      
  50.                     })  
  51.                 };  
  52.                   
  53.                 var a2=document.createElement("a");  
  54.                 var node2 = document.createTextNode(" 预览  ");  
  55.                 a2.appendChild(node2);  
  56.                 a2.setAttribute("href","#");  
  57.                 a2.setAttribute("id","a2"+i);  
  58.                 a2.onclick=function(){  
  59.                     //console.log();  
  60.                     //console.log(data);  
  61.                     var id=this.id;  
  62.                     var formId=id.substring(2);  
  63.                     var form=data[formId].form;  
  64.                     form.replace("{","");  
  65.                     form.replace("}","");  
  66.                     form.replace("|","");  
  67.                     //console.log(document.getElementById(id).innerText);  
  68.                     win_parse=window.open('''','''',''width=800,height=400,alwaysRaised=yes,top=100,left=200'');  
  69.                     var str=''<div >''+form+''</div>'';  
  70.                     win_parse.document.write(str);  
  71.                     win_parse.focus();       
  72.                     //document.getElementById("div2").write(str);  
  73.                 };  
  74.                   
  75.                 td3.appendChild(a1);  
  76.                 td3.appendChild(a2);  
  77.                 tr.appendChild(td0);  
  78.                 tr.appendChild(td1);  
  79.                 tr.appendChild(td2);  
  80.                 tr.appendChild(td3);  
  81.                 tables.appendChild(tr);  
  82.         }  
  83.     }  
  84. })  
  85. })  


三、 后台代码:
Controller类中相关方法:
[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. @RequestMapping(value = "/findForms.do", method = RequestMethod.POST)  
  2.     @ResponseBody  
  3.     public Object findForms() {  
  4.         List<Map<String, String>> list = formService.findForms();  
  5.         return list;  
  6.     }  
  7.   
  8.   
  9.     @RequestMapping(value = "/deleteForm.do", method = RequestMethod.POST)  
  10.     @ResponseBody  
  11.     public Object deleteForm(HttpServletRequest request) {  
  12.         String formIde = request.getParameter("formId");  
  13.         formService.deleteForm(formIde);  
  14.         return null;  
  15.     }  



 Service类相关方法:
[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. public Object addForm(String formType, String string);  
  2. public void deleteForm(String formId);  


 serviceImp实现:
[java]  view plain  copy
  在CODE上查看代码片 派生到我的代码片
  1. /** 
  2.      * 查询表单列表 
  3.      *  
  4.      * @author:tuzongxun 
  5.      * @Title: findForms 
  6.      * @Description: TODO 
  7.      * @param @return 
  8.      * @date Mar 28, 2016 4:29:58 PM 
  9.      * @throws 
  10.      */  
  11.     public List<Map<String, String>> findForms() {  
  12.         Connection connection = this.getDb();  
  13.         Statement statement;  
  14.         List<Map<String, String>> list = new ArrayList<Map<String, String>>();  
  15.         try {  
  16.             statement = connection.createStatement();  
  17.             ResultSet resultSet = statement  
  18.                     .executeQuery("select * from formtest");  
  19.             while (resultSet.next()) {  
  20.                 Map<String, String> map = new HashMap<String, String>();  
  21.                 String formString = resultSet.getString(2);  
  22.                 // resultSet.getString(2);  
  23.                 System.out.println("formString:" + formString);  
  24.                 map.put("formId", resultSet.getString(1));  
  25.                 map.put("formType", resultSet.getString(2));  
  26.                 map.put("form", resultSet.getString(3));  
  27.                 list.add(map);  
  28.             }  
  29.             ;  
  30.         } catch (Exception e) {  
  31.             e.printStackTrace();  
  32.         }  
  33.         return list;  
  34.     }  
  35.   
  36.   
  37.     /** 
  38.      * 删除表单 
  39.      *  
  40.      * @author:tuzongxun 
  41.      * @Title: addForm 
  42.      * @Description: TODO 
  43.      * @param @param formType 
  44.      * @param @param string 
  45.      * @param @return 
  46.      * @date Mar 28, 2016 4:30:18 PM 
  47.      * @throws 
  48.      */  
  49.     public void deleteForm(String formId) {  
  50.         try {  
  51.             Connection connection = this.getDb();  
  52.             PreparedStatement ps = connection  
  53.                     .prepareStatement("delete from  formtest where formId=?");  
  54.             ps.setString(1, formId);  
  55.             ps.executeUpdate();  
  56.   
  57.   
  58.             connection.close();  
  59.         } catch (Exception e) {  
  60.             e.printStackTrace();  
  61.         }  
  62.     }  

列表页面效果如图:



预览效果如图:


0

asp有效防止网站留言板出现垃圾留言/评论实现思路

asp有效防止网站留言板出现垃圾留言/评论实现思路

一.在表单填写页面: <input name="intime1" type="hidden" value="<%=Now()%>">
在提交处理页面,设置提交时间
复制代码 代码如下:

If DateDiff("s",request.form("intime1"), Now()) < 5 then
response.write "<SCRIPT language=JavaScript>alert(''您的留言速度太快,禁止留言!'');"
response.write "this.location.href=''vbscript:history.back()'';</SCRIPT>"
response.end
end if

二.验证码
复制代码 代码如下:

yz=cstr(request.Form("yz"))
yz1=cstr(session("yz1"))
if yz1<>yz then
Response.Write("<script language=javascript>alert(''请正确输入验证码!'');</script>")
response.redirect("sign.asp")
end if

三.判断来路
复制代码 代码如下:

server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
''Response.Write(server_v1)
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
''Response.Write(server_v2)
if mid(server_v1,8,len(server_v2))<>server_v2 then
Response.Write("<script language=javascript>alert(''禁止外部提交数据!'');</script>")
response.end
end if

四.设置每日提交次数
复制代码 代码如下:

''当用户每提交一次
if request.cookies("postnum")="" then
response.cookies("postnum")=1
response.cookies("postnum").expires=DateAdd("h", 24, Now())
else
response.cookies("postnum")=request.cookies("postnum")+1
end if
if request.cookies("postnum") > 3 then
response.write "<SCRIPT language=JavaScript>alert(''今天留言次数超过限制,禁止留言!'');"
response.write "this.location.href=''vbscript:history.back()'';</SCRIPT>"
response.end
end if

五.禁止IP
复制代码 代码如下:

server_ip=Cstr(Request.ServerVariables("REMOTE_ADDR"))
if right(server_ip,8) = "194.165." then
response.write "禁止重叠提交194.165."
response.End()
end if

1、判断该发布信息是否有可靠的来路。只要是自然人发布的,那么他一定是通过我们提供给用户的提交页过来的,一定有一个来路;如果是机器发布的,就不会有来路信息。
''判断来路,禁止外部提交
复制代码 代码如下:

dim server_v1,server_v2
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
if server_v1="" or instr(server_v1,"/add.asp")<=0 or mid(server_v1,8,len(server_v2))<>server_v2 then
response.write "<SCRIPT language=JavaScript>alert(''来源非法,禁止外部提交!'');"
response.write "this.location.href=''vbscript:history.back()'';</SCRIPT>"
response.end
end if

注意,上面的/add.asp就是提交页面来源页。当然,机器也可以伪造来路,这就要结合以下方式一起对付了。
2、验证码。验证码一直是对付机器垃圾留言的一个可行的方法。不同的验证码有不同的对付机器留言的能力,越复杂的验证码,机器越难破解。这需要在考虑用户的感受和对付机器之间选择一个平衡点。关于验证码的使用方法,我就不多说了,谷歌、百度里搜索下就会出现很多介绍。
3、判断来源提交的时间。如果在提交页停留的时间太短,比如20秒,一般只要是个人,他打字的时间都不必这个少。举例说明,在用户打开页面(如add.asp)的时候,我们记下这个时间,在form提交表单里增加一个隐藏对象,如:
<input name="intime1" type="hidden" value="<%=Now()%>">
然后,当用户写好留言评论后提交到具体处理页面(如addok.asp)的时候,我们获取当前时间,和add.asp里的这个intime1时间比较,如果这个时间差小于设定的时间,如20秒,则禁止留言,判断为机器。代码可这样写:
复制代码 代码如下:

If DateDiff("s",request.form("intime1"), Now()) < 20 then
response.write "<SCRIPT language=JavaScript>alert(''您的留言速度太快了吧,禁止留言!'');"
response.write "this.location.href=''vbscript:history.back()'';</SCRIPT>"
response.end
end if

通过以上三种方法可以屏蔽掉绝大部分的机器垃圾留言评论,如果还有大量的留言的话,那多半是人肉留言了。但是,我们又如何对付人肉留言呢?flymorn也提供方法对付。
方法很简单,就是通过记录用户的cookies以及IP来限制同一用户发表留言的数量。比如一天24小时内,只允许同一用户发表信息5条。我们可以通过以下方法实现。
复制代码 代码如下:

<%''当用户每提交一次
if request.cookies("postnum")="" then
response.cookies("postnum")=1
response.cookies("postnum").expires=DateAdd("h", 24, Now())
else
response.cookies("postnum")=request.cookies("postnum")+1
end if
if request.cookies("postnum") > 5 then
response.write "<SCRIPT language=JavaScript>alert(''今天留言次数超过限制,禁止留言!'');"
response.write "this.location.href=''vbscript:history.back()'';</SCRIPT>"
response.end
end if
%>

通过以上的限制,人工发帖也得到了一定的限制。上面的方法是基于cookies判断,当然用户可以通过浏览器清空COOKIES,但这样增加了他们发垃圾帖子的难度,提高了门槛。我们还可以继续判断发布者的IP,通过同一个IP下发帖限制数量来达到我们的目的。在此,就不再扩展,大家可以自己设计如何判断IP来限制发帖的方法。如果您对本文讨论的主题有看法或建议,欢迎留下评论,以便我们一起探讨。
您可能感兴趣的文章:
  • asp简单的ajax留言板
  • asp简单的ajax留言板(采用三层模式)
  • 利用XML开发留言板简单的例子
  • ASP+XML留言板介绍
  • 本人ajax留言板的源程序 不错的应用js
  • 来自经典的打造简单的PHP&MYSQL留言板
  • php xml留言板 xml存储数据的简单例子
  • JS+CSS模拟可以无刷新显示内容的留言板实例
  • 如何使用Android实现接口实信息在留言板显示
  • ASP开发基于XML的留言板

asp防止垃圾留言代码

asp防止垃圾留言代码

<!--#include file="common/conn.asp"-->
<!--#include file="common/sub.asp"-->
<% 
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
Response.Write(server_v1) 
server_v2=Cstr(Request.ServerVariables("SERVER_NAME")) 
if mid(server_v1,8,len(server_v2))<>server_v2 then 
 response.write "禁止外部提交数据" 
 response.end 
end if 

if len(request.form("frmContent"))>1000 then 
 response.write "输入内容超过规定字符数目" 
 response.end 
end if 

if request.cookies("visitime")<>"" then 
 if DateDiff("s",request.cookies("visitime"),now())<60 then 
  response.write "请勿在1分钟内重复提交评论" 
  response.end 
 end if 
end if 


count="六合彩,免费电影,安利,http,www" 
connts = split(connt,",") 
For each glword in connts 
 if instr(request.form("frmcontent"),glword)<>0 then 
 response.write "该关键字已被过滤" 
 response.end 
 end if 
next 

Dim UserNam,Comments
Dim fieldlist,Valuelist
UserName = Request.Form("UserName")
Comments = Request.Form("Comments")
newsid = Request.Form("newsid")
If UserName = "" Or Comments = "" Then 
 Response.Write("姓名或者内容没有填写")
 Response.End()
End If
fieldlist = array("UserName","Comments","newsid")
valuelist = array(UserName,Comments,newsid)
Set objRs = Server.CreateObject("ADODB.recordset")
objRs.open "Feedback",objConn,1,2
objRs.addnew fieldlist,valuelist
closeI()
response.cookies("visitime")=now() 
response.Redirect(server_v1)
%> 

今天关于自定义表单SQL命令行批量删除垃圾留言sql 批量删除表的讲解已经结束,谢谢您的阅读,如果想了解更多关于6系统留言总是收到垃圾留言,怎么屏蔽啊、activiti自定义流程之自定义表单(三):表单列表及预览和删除、asp有效防止网站留言板出现垃圾留言/评论实现思路、asp防止垃圾留言代码的相关知识,请在本站搜索。

本文标签: