以下代码是利用地址值传递对数据库进行查询的 过程
其中num是循环次数 例如网址为
http://localhost/admin1/qcxs/duibi02.aspx?num=3&brands1=帅凌&value1=1&brands2=菱帅&value2=1&brands3=得利卡&value3=1
总是对两个汉字字的有结果 对三个字的 即使数据库中有内容也没结果
怀疑是地址编译后查询不到 怎么解决呢 这个问题经常让我头疼 请高手指点!!Sub binddata()
If Request.QueryString("num") = "" Then
thealert = "<script language=Javascript>" & "alert('请返回上页选择车型!');" & "</script>"
Response.Write(thealert)
Exit Sub
Else
Dim i As Integer
Dim strsou, sodai, adsou As String
strsou = "select * from carlist where "
For i = 1 To CInt(Request.QueryString("num"))
adsou = Request.QueryString("brands" & i)
sodai = " xilie=" & "'" & adsou & "' "
If i < CInt(Request.QueryString("num")) Then
strsou = strsou & sodai & " or "
Else
strsou = strsou & sodai
End If
Next
Dim conn As New SqlConnection(userdb)
Dim dp As New SqlDataAdapter(strsou, conn)
Dim dt As New DataSet
dp.Fill(dt, "liebiao")
jtbj.DataSource = dt.Tables("liebiao").DefaultView
jtbj.DataBind() End If End Sub
其中num是循环次数 例如网址为
http://localhost/admin1/qcxs/duibi02.aspx?num=3&brands1=帅凌&value1=1&brands2=菱帅&value2=1&brands3=得利卡&value3=1
总是对两个汉字字的有结果 对三个字的 即使数据库中有内容也没结果
怀疑是地址编译后查询不到 怎么解决呢 这个问题经常让我头疼 请高手指点!!Sub binddata()
If Request.QueryString("num") = "" Then
thealert = "<script language=Javascript>" & "alert('请返回上页选择车型!');" & "</script>"
Response.Write(thealert)
Exit Sub
Else
Dim i As Integer
Dim strsou, sodai, adsou As String
strsou = "select * from carlist where "
For i = 1 To CInt(Request.QueryString("num"))
adsou = Request.QueryString("brands" & i)
sodai = " xilie=" & "'" & adsou & "' "
If i < CInt(Request.QueryString("num")) Then
strsou = strsou & sodai & " or "
Else
strsou = strsou & sodai
End If
Next
Dim conn As New SqlConnection(userdb)
Dim dp As New SqlDataAdapter(strsou, conn)
Dim dt As New DataSet
dp.Fill(dt, "liebiao")
jtbj.DataSource = dt.Tables("liebiao").DefaultView
jtbj.DataBind() End If End Sub
webconfig中修改如下
<globalization
requestEncoding="GB2312"
responseEncoding="GB2312"
/>
我的解决方案: 用server.urlencode把要传的参数编码