首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

无效字符解决思路

2013-11-20 
无效字符错误提示:Microsoft VBScript 编译器错误 错误 800a0408无效字符/Manage/Web/NewsInfo/Modify2.

无效字符
错误提示:
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
ASP??
[解决办法]
我帮你检查了一下
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
这两句前面的空格删掉,因为有特殊字符在里面,重新手动输入空格。

再运行一下你的程序

热点排行