本文提供两段JavaScript代码示例,分别用于URL参数和文本输入框的SQL注入基础防护。通过正则表达式检测非法字符如select、delete等,并在检测到风险时进行拦截或清空处理,旨在为前端提供简单的输入验证参考。
URL参数SQL注入防护
针对URL地址中的SQL注入风险,可以通过以下JavaScript代码进行基础过滤:
URL过滤逻辑说明
//过滤URL非法SQL字符
var sUrl=location.search.toLowerCase();
var sQuery=sUrl.substring(sUrl.indexOf("=")+1);
re=/select|update|delete|truncate|join|union|exec|insert|drop|count|'|"|;|>|<|%/i;
if(re.test(sQuery))
{
alert("请勿输入非法字符");
location.href=sUrl.replace(sQuery,"");
}
输入框SQL注入防护
针对用户输入的文本框,可以通过添加特定的事件处理函数来防止SQL注入:
输入验证逻辑说明
/防止SQL注入
2function AntiSqlValid(oField )
3{
4 re= /select|update|delete|exec|count|'|"|=|;|>|<|%/i;
5 if ( re.test(oField.value) )
6 {
7 //alert("请您不要在参数中输入特殊字符和SQL关键字!"); //注意中文乱码
8 oField.value = ";
9 oField.className="errInfo";
10 oField.focus();
11 return false;
12 }
在需要实施防注入保护的输入文本框中,添加如下JavaScript方法调用:
txtName.Attributes.Add("onblur", "AntiSqlValid(this)");//防止Sql脚本注入
以上两段简单的JavaScript代码示例旨在为前端SQL注入防护提供参考,希望能对读者有所帮助。