Response.Redirect("CustomerManager_Card.aspx?parameter=" + sb.ToString () + "&test=" + Convert.ToString(ObjRandom.Next(100000))); sb的值是: 1=1  and CustomerName like '%22%' ;接收页面:Request["parameter"] 的值是: 1=1  and CustomerName like '"%'
如果sb的值是: 1=1  and CustomerName like '%44%' ; 接收页面:Request["parameter"] 的值是: 1=1  and CustomerName like 'D%'也就是: %22成了"   %44 成了 D   求助如何解决呀??? 

解决方案 »

  1.   

    Convert.ToString(ObjRandom.Next(100000)))??这是多了一个括号
      

  2.   

    接收页面:Request["parameter"] 的值是: 1=1 and CustomerName like '"%'认真的看好像没看懂你在说什么
      

  3.   

    这是被解析了像这样的数据还是用Session 存吧
      

  4.   

     Response.Redirect("CustomerManager_Card.aspx?parameter=" + sb.ToString() + "&test=" Server.UrlEncode( + Convert.ToString(ObjRandom.Next(100000)))); 
      

  5.   

    接收时:  
     string s=Server.UrlDecode(Request.QueryString["test"]);
      

  6.   

    传参的时候先编码 接收时再写解码 具体GOOGLE ASP.NET 解码 编码
    你本身这样传参是不对的 很容易被SQL注入
      

  7.   

    你疯了, 把语句通过url来传递。
      

  8.   

    还是使用其他方式传递如 server.transfer属性
    session
      

  9.   

    parameter=" + Server.UrlEncode(sb.ToString ())
      

  10.   

    很容易被SQL注入 ? 能举个例子吗 ?刚刚接触,请多多指教 
      

  11.   

    1=1 and CustomerName like '%22%'————》1=1 and CustomerName like '';delete from tuser where 1='1'
      

  12.   

    Response.Redirect("CustomerManager_Card.aspx?parameter=" +  Server.UrlEncode(sb.ToString()) + "&test=" + Convert.ToString(ObjRandom.Next(100000)));
    Server.UrlDecode(Request["parameter"])的值还是不对呀
    加了Server.UrlEncode() 为啥还不行呀
      

  13.   

    呵呵,你这个接收不用Server.UrlDecode直接Request["parameter"]
    最好还是别这样传些这样的参数,还不如传个22过去,在接收页面再组装
      

  14.   

    首先你这样是很不安全的  将SQL 作为URL参数传过去你还不如将这些SQL语句的参数传过去 然后在接收页面再组合SQL语句啊
      

  15.   


    怎样做不让自动解析呀 我想做跳转页面并传参数(sql查询条件 多个 and的)有没有好的方法呀