高手们,我用这种方法写搜索,搜索结果一片空白,是怎么回事了?请帮我改正一下,谢谢谢谢谢谢谢谢谢谢谢谢谢谢!!!!前台搜索框:
<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>");
}
}
}
<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>");
}
}
}
string key = Request.Form["key"];
都必须判断是否为空的情况。再赋值,不然会出错的。
if (Request.Form["key"]!=null)
{
string s = Request.Form["key"].Trim();
}
首先断点看看是否拿到key和t的值,然后在看看sql是否有错误。空白。很难理解。另外结贴率很彪悍。