欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

无效字符解决思路

更新时间: 2014-01-05 00:56:30 责任编辑: Author_N1

 

无效字符
错误提示:
Microsoft VBScript 编译器错误 错误 '800a0408'

无效字符

/Manage/Web/NewsInfo/Modify2.asp,行 13

if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then


写了一个防SQl注入的,报错了

Dim sql_injdata,Sql_Inj,SQL_Get,Sql_Post,Sql_DATA
sql_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
Sql_Inj = Split(SQL_Injdata, "|")
Response.Write Sql_Inj

If Request.Form<>"" Then
    For Each Sql_Post In Request.Form
For Sql_DATA = 0 To UBound(SQL_inj)
Response.write ("<script>alert('"&Request.Form(Sql_Post)&"!');</script>")
Response.Write Request.Form(Sql_Post)
Response.Write Sql_Inj(Sql_DATA) 
if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then
'If instr(Request.Form(Sql_Post),SQL_inj(SQL_Data))>0 Then
           Response.Write "<Script>alert('系统提示请不要在参数中包含非法字符尝试注入!')</Script>"
           Response.End
End If
        Next
    Next
End If

--参考方法--
我帮你检查了一下
Response.Write Sql_Inj  写法错误,因为Sql_Inj是数组,不可以这样输出
if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then 这句中的大于号是中文的,你改一下

Response.Write "<Script>alert('系统提示请不要在参数中包含非法字符尝试注入!');</Script>" 
Response.End
这两句前面的空格删掉,因为有特殊字符在里面,重新手动输入空格。

再运行一下你的程序
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 00:56:30
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/1626/
本文WWW.DOC100.NET DOC100.NET版权所有。