下面这段代码中的%20是什么东东啊
不明白,正则里面的规则中加入这么多%20是什么意思...
<script language="javascript">
<!--
 var url = location.search;
 var re=/^\?(.*)(select%20|insert%20|delete%20from%20|count\(|drop%20table|update%20truncate%20|asc\(|mid\(|char\(|xp_cmdshell|exec%20master|net%20localgroup%20administrators|\"|:|net%20user|\|%20or%20)(.*)$/gi;
 var e = re.test(url);
 if(e) {
  alert("地址中含有非法字符~");
  location.href="error.asp";
 }
//-->
<script> 

解决方案 »

  1.   

    那么这里过滤的是select空格的意思咯?我一直以来的疑惑~~~
      

  2.   

    好像我在地址栏里输入select加空格也不见得会过略啊网上的这段脚本有什么意义,还是根本就没这个%20的???
      

  3.   

    这端代码是用来过滤SQL语言的关键字防止sql注入的,不过貌似是在客户端执行,不知道有什么用~
      

  4.   

    我在浏览器里的查询字符串中输入如:http://www.xx.com?id=select%20 这样才能过滤,
    如果输入键盘上的空格并不能过滤哇,不解哦!
      

  5.   


    同意"空格"在URL编码后就是%20
      

  6.   

    空格
    alert(decodeURIComponent('%20'));