ASP.NET传递参数不完整
我用用户控件编写的导航栏,象这样:
-|首页|--报纸书刊-|-电脑及其周边设备-|-衣服-|-数码产品-|-化装用品-|-生活用品-|-影视音乐-|-办公用品-|-软件-|-游戏-|-床上用品-|-珠宝首饰-|-
通过Request.Params来传递商品分类
比如象这样:http://localhost/shoppingonline/pkinds_morelist.aspx?pkinds=数码产品
获取数据的代码是:
Sub getdata()
Dim mycmd As OleDb.OleDbDataAdapter
mysql = "select * from pinfor where pkind= ' " + Request.Params( "pkinds ") + " ' order by id desc "
Dim dt As DataSet = New DataSet
mycmd = New OleDb.OleDbDataAdapter(mysql, mycon)
'每页显示6个商品信息
mycmd.Fill(dt, viewstate( "pagenow "), 6, "plist ")
mydl.DataSource = dt.Tables( "plist ").DefaultView
mydl.DataBind()
End Sub
问题就出在这里,商品分类中其他的都正常,可是 "化装品 " "小饰品 " "游戏点卡 "却读不出数据来.按理说Request.Params应该传递这些数据的,可实际上却传递的不完整,页面上要显示分类代码是:当前商品大类为: <%#request.params( "pkinds ")%> ,我能看到的却是 "化装 " "小饰 " "游戏 ",其他的项都正常,我实在搞不明白了,还请各位高手帮帮忙了.
------解决方案--------------------用HttpUtility.UrlEncode加密参数