ASP条件查询啊

Only_D 2005-12-30 06:48:02
xx.asp?classname=网卡天线(点击这个、把全部产品都列出来了)
xx.asp?classname=公话天线(点这个、就正确列出符合条件的产品)

==========库数据==========
ID Nclassname
1 网卡天线
2 网卡天线
3 公话天线
4 公话天线

==========================
==========================
if request("classname")<>"" then

sql="select * from product where Nclassname='"&trim(request("classname"))

else

sql="select small_pic,productno from product"

end if
===========================

帮我看看是什么原因啊!有什么方法优化一下吗?
...全文
177 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
allenjay2003 2005-12-31
  • 打赏
  • 举报
回复
if request("submit")<>""
是说是否是提交过来的,即点了提交按钮过来的
你应该在这个结构里写两种情况得代码
如果考虑分页,那就在action=""里用?传值

分页得话不必考虑表单,前提是你谢了上面得false情况,
需要用 request.QueryString("xxx")接受值
要特别注意防注入

*鼓励自学
Only_D 2005-12-31
  • 打赏
  • 举报
回复
UP!~~~~~~~

谁来帮我呢?
Only_D 2005-12-31
  • 打赏
  • 举报
回复
To cad502(冬眠) :前面没有if request("submit")<>""的。

To allenjay2003():可以示范一下吗?我因为是自学,很多都不清楚的。
allenjay2003 2005-12-31
  • 打赏
  • 举报
回复
分页:<a href="XX.asp?XXX=<%=name%>">下一页</a>
当点击下一页时,name是从form中获取变量,那么提交过去却不是FORM递给它的就取不到,SQL句的NAME就变成空,把所有数据列出来了。

---------------------------------------------------------------
获取一下xxx得值,name1 = request.QueryString("xxx")
并判断
注意和 name=request.form("XXX") 结构化即可
冬天的糊涂神 2005-12-31
  • 打赏
  • 举报
回复

你写name=request.form("XXX")
前是不是有if request("submit")<>""



Only_D 2005-12-31
  • 打赏
  • 举报
回复
谢谢大家帮忙,我现在检查出是我分页获取CLASSNAME的问题,SQL语句是没问题的!这个搞定了。

另外有个搜索和这个问题差不多,搜索是从FORM表单提交变量过来,
写成:name=request.form("XXX")
...
SQL="select * product where Nclassname='"&name
...
分页:<a href="XX.asp?XXX=<%=name%>">下一页</a>
当点击下一页时,name是从form中获取变量,那么提交过去却不是FORM递给它的就取不到,SQL句的NAME就变成空,把所有数据列出来了。

请问该怎么处理呢?
xdk 2005-12-31
  • 打赏
  • 举报
回复
sql="select * from product where Nclassname='"&trim(request("classname"))
字符串类型的话.要用''引起嘛.

改为:

sql="select * from product where Nclassname='"&trim(request("classname"))&"'"

zhanghongwen 2005-12-31
  • 打赏
  • 举报
回复
if request("classname")<>"" then
strtj=replace(trim(request("classname")), "'", "''")
strtj=replace(trim(request("classname")),CHR(32), " ")
sql="select * from product where Nclassname='"&strtj&"'"

else

sql="select small_pic,productno from product"

end if
zhanghongwen 2005-12-31
  • 打赏
  • 举报
回复
不好意思,我还是没看懂你是什么意思?
  • 打赏
  • 举报
回复
无语
竹林听雨2005 2005-12-30
  • 打赏
  • 举报
回复
sql="select * from product where Nclassname='"&trim(request("classname"))

改成

sql="select * from product where Nclassname='"&trim(request("classname"))&"'"
hj3793 2005-12-30
  • 打赏
  • 举报
回复
Dim SelSql
SelSql = " and Nclassname='"&request("classname")&"'"
sql="select small_pic,productno from product where 1=1"&SelSql
wojiaogyp 2005-12-30
  • 打赏
  • 举报
回复
查数据库前把sql语句输出来看看就都知道了

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧