求助:商品查询出错了
<%@ LANGUAGE="VBScript" %><html>
<head><title>商品查询</title></head>
<body onload="fqs.coid.value=''">
<center>
<h2>实用型商品查询网页</h2><hr>
<form name="fqs" action="1.asp" method="post">
<table>
<tr><td colspan="6"><font color="blue">查询条件</font></td></tr>
<tr><td colspan="6"><hr></td></tr>
<tr>
<td>商品名称</td>
<td><input name="mc" type="text" maxlength="8" size="10">?</td>
<td>商品类别</td>
<td><select name="lb">
<%
' 注释:数据库连接代码
Set objConn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Access Driver (*.mdb)};"
DBPath = "DBQ=" & Server.MapPath("sp.mdb")
objConn.Open Driver & DBPath
' 注释:创建并打开Recordset对象
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.ActiveConnection = objConn
objRS.Source = "SELECT distinct 类别 FROM spxx"
objRS.Open
' 注释:读取记录集中所有的课程记录
Do While Not objRS.EOF
%>
<option value=<% = objRS("类别") %>><% = objRS("类别") %></option>
<%
objRS.MoveNext
Loop
' 注释:断开数据库连接
objRS.Close ' 关闭记录集
Set objRS = Nothing
objConn.Close ' 关闭数据库连接
Set objConn = Nothing
%>
</select>?</td>
<td><input type="submit" value="查询">?</td>
<td><input type="reset" value="重设"></td>
<tr><td colspan="6"><hr></td></tr>
<tr><td colspan="6"><font color="blue">查询结果</font></td></tr>
</table>
</form>
<%
If Request("lb") <> "" and Request("mc") <> "" Then
' 注释:数据库连接代码
Set objConn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Access Driver (*.mdb)};"
DBPath = "DBQ=" & Server.MapPath("sp.mdb")
objConn.Open Driver & DBPath
' 注释:创建并初始化Recordset对象
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.ActiveConnection = objConn
objRS.Source = "SELECT 零售价,类别,商品名称,商品编号,调价时间 FROM spxx " & _
"WHERE 类别 = '" & Request("lb") & "' AND 商品名称 like '%" & Request("mc") & "%'"
objRS.CursorType = 3 ' 记录集指针类型设为静态指针
objRS.Open
' 注释:显示查询条件
Response.Write("<table border='1' width='80%'>")
Response.Write("<tr align='left'>")
Response.Write("<th>商品编号</th>")
Response.Write("<th>商品名称</th>")
Response.Write("<th>类别</th>")
Response.Write("<th>单价</th>")
Response.Write("<th>调价时间</th>")
Response.Write("</tr>")
If objRS.RecordCount > 0 then
for i=0 to objRS.RecordCount
Response.Write("<tr>")
Response.Write("<td>" & objRS("商品编号") & "</td>")
Response.Write("<td>" & objRS("商品名称") & "</td>")
Response.Write("<td>" & objRS("类别") & "</td>")
Response.Write("<td>" & objRS("零售价") & "元</td>")
Response.Write("<td>" & objRS("调价时间") & "</td>")
Response.Write("</tr>")
objRS.MoveNext
next
Else
Response.Write("<td>?</td>")
Response.Write("<td>?</td>")
Response.Write("<td> 没有找到!<td>")
End If
' 注释:断开数据库连接
objRS.Close ' 关闭记录集
Set objRS = Nothing
objConn.Close ' 关闭数据库连接
Set objConn = Nothing
End If
%>
</center>
</body>
</html>
红笔标注的地方提示出错,但去掉蓝笔标注的地方能正常运行
这个程序实现的是商品查询,即在文本框输入查询商品(模糊查询),选择商品种类后,点击查询,就会表格的方式列出所查的商品
例如:
文本框输入 纽崔莱 类别选择饮料 点查询 预期的目标是显示:
商品编号 商品名称 类别 零售价 调价时间
180001 纽崔莱松果菊健体 饮料 204 2007-4-11
180002 纽崔莱小麦胚牙油 饮料 280 2007-4-11
180003 纽崔莱维生素C片 饮料 250 2007-4-18
麻烦大家帮着改一下~~~~~~
sp.rar
(13.5 KB)
这是数据库
1.rar
(1.48 KB)
这是我用记事本写的代码[[it] 本帖最后由 xiaolaba3330 于 2008-5-15 16:36 编辑 [/it]]