高手们,我用这种方法写搜索,搜索结果一片空白,是怎么回事了?请帮我改正一下,谢谢谢谢谢谢谢谢谢谢谢谢谢谢!!!!前台搜索框:
<form id="form1" name="form1" method="post" action="search.aspx">
  搜索:
  <input type="text" name="key" />
  <select name="t">
  <option value="1">新 闻</option>
  <option value="2">产 品</option>
  <option value="3">下 载</option>
  </select>   
  <input type="submit" name="Submit" value="search" />
  </form>
目标搜索结果显示页。
protected StringBuilder sb = new StringBuilder();
  protected void Page_Load(object sender, EventArgs e)
  {
        string t = Request.Form["t"];
        string key = Request.Form["key"];
  DataTable dt = new DataTable();  if (t == null || t == "")
  {
  Response.Write("<script>alert('请选择要搜索的栏目!');history.back();</script>");
  if (t == "1")
  {
  dt = Class.gd("select * from [news] where title like '%" + key + "%' order by id desc").Tables[0];
  for (int i = 0; i < dt.Rows.Count; i++)
  {
  sb.Append(" <span>" + dt.Rows[i]["data"].ToString() + "</span><a href=\"news_view.asp?id=" + dt.Rows[i]["id"].ToString() + "\">=" + dt.Rows[i]["title"].ToString() + "</a> </li>");
  }
  }
  if (t == "2")
  {
  dt = Class.gd("select * from [product] where title like '%" + key + "%' order by id desc").Tables[0];
  for (int i = 0; i < dt.Rows.Count; i++)
  {
  sb.Append(" <span>" + dt.Rows[i]["data"].ToString() + "</span><a href=\"product_view.asp?id=" + dt.Rows[i]["id"].ToString() + "\">=" + dt.Rows[i]["title"].ToString() + "</a> </li>");
  }
  }
  else
  {
  dt = Class.gd("select * from [product] where title like '%" + key + "%' order by id desc").Tables[0];
  for (int i = 0; i < dt.Rows.Count; i++)
  {
  sb.Append(" <span>" + dt.Rows[i]["data"].ToString() + "</span><a href=\"download_view.asp.asp?id=" + dt.Rows[i]["id"].ToString() + "\">=" + dt.Rows[i]["title"].ToString() + "</a> </li>");
  }
  }
  }

解决方案 »

  1.   

    唉。ASP写net。 string t = Request.Form["t"];
      string key = Request.Form["key"];
    都必须判断是否为空的情况。再赋值,不然会出错的。
     if (Request.Form["key"]!=null)
            {
                string s = Request.Form["key"].Trim();
            }
    首先断点看看是否拿到key和t的值,然后在看看sql是否有错误。空白。很难理解。另外结贴率很彪悍。