如何在ASP中将字符串转换成数字?在线等答案!!!急!

zhoujie19820204 2004-08-01 09:10:19
数据库字段:类型(文本)品牌(文本)型号(文本)价格(数字)
我想对一定价格的商品进行筛选,用以下语句:
Do While Not rs.EOF
if request("cplx") = rs(1) and request("pp") = rs(2) and request("jg") > rs(4) then
Response.Write rs("品牌") & " " & rs("型号") & " " & rs("价格") & "<BR>"
end if
rs.MoveNext
Loop

好象无效,但是浏览器解释无问题,高手指教,小弟刚学ASP才两天,表笑我问得弱智,先谢谢了哈!!!
...全文
2753 23 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
wubaozhang 2004-08-02
  • 打赏
  • 举报
回复
没错,是该用到什么学什么,但那是说怎么用,不是能做什么

平时就要多了解下能做什么!

要不然到时候都不知道能不能做,该用什么,当然也用不好了
---------------------------------------------------------------
不要以为别人的真理就是自己的真理,也许你根本没了解别人是怎么理解它的
jhpxf 2004-08-02
  • 打赏
  • 举报
回复
建议是用到什么学什么了,人不可能一下子就把什么都学会了,哈哈
jhpxf 2004-08-02
  • 打赏
  • 举报
回复
Do While Not rs.EOF
if cstr(request("cplx")) = cstr(rs(1)) and cstr(request("pp"))= cstr(rs(2)) and cstr(request("jg")) > cstr(rs(4)) then
Response.Write rs("品牌") & " " & rs("型号") & " " & rs("价格") & "<BR>"
end if
rs.MoveNext
Loop
不知道这样是不是可以了哈?
computer17 2004-08-02
  • 打赏
  • 举报
回复
这样的做法并不好,还不如在SQL语句中用Where 语句判断,这样做的缺点:返回的数据太多,占用太多的资源
SQL语句参考:
Select cplx,pp,jg from [table] where cplx=cplx取值 '取值不要引号
wubaozhang 2004-08-01
  • 打赏
  • 举报
回复
晕!!如果你初学ASP,至少你要先看一遍VBS的常用函数吧,不多,也就20来个的
emilsong 2004-08-01
  • 打赏
  • 举报
回复
发送给:superdullwolf(超级大笨狼,每天要自强) ( )
新官上任三把火!
zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
同意菜菜EMAIL,我用过的,可以重复使用。
cint(trim(tempstr))是不行的
我好象没把问题说清楚,是这样的,我想在表单中让用户填写一个数字,然后在数据库中查询一字段大于此数字的记录,我的上面的代码编译是对的,但是它什么结果都没有显示,我怀疑是变量类型不对,所以比较语句无作用,现在请教哈大家,大家有空的话可以留下邮箱,我把那个页面和数据库发给大家,谢谢了!!
emilsong 2004-08-01
  • 打赏
  • 举报
回复
To : superdullwolf(超级大笨狼,每天要自强)
如果重复使用request("cplx")是不行的------>存在疑问?
emilsong 2004-08-01
  • 打赏
  • 举报
回复
====================引用 Jaron(good,better,best)===================
看错了,以为是数字转换为字符
可以用 cint(),clng()函数。
=========================================
用cint(trim(tempstr))测试一下!
超级大笨狼 2004-08-01
  • 打赏
  • 举报
回复
request("cplx")
之类的放在代码最前面不要在程序中间,还有request("cplx") 只能取一次

一般dim mycplx = request("cplx") 然后可以重复使用。
如果重复使用request("cplx")是不行的

字符转化数字

1,cint(),cdbl()等函数
2,Response.Write eval("2 + 3")

zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
不是,就是浏览器提示的
emilsong 2004-08-01
  • 打赏
  • 举报
回复
在SQL中我试过了,提示:类型不匹配,晕?
SQL查询分析器?
zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
我说的那个价格范围是个变量,应该是表单提交字符串型的,这样在SQL中会提示类型不匹配
emilsong 2004-08-01
  • 打赏
  • 举报
回复
where jg between 1000 and 1800
method2:
where jg>1000 and jg<1800
zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
在SQL中我试过了,提示:类型不匹配,晕
zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
我是想返回一定范围的,比如大于1000,小于1800什么的
emilsong 2004-08-01
  • 打赏
  • 举报
回复
Dim i
i=1
Do While Not rs.EOF
If request("cplx") = rs(1) and request("pp") = rs(2) and request("jg") > rs(4) then
response.write i&"<br>"
Response.Write rs("品牌") & " " & rs("型号") & " " & rs("价格") & "<BR>"
i=i+1
end if
rs.MoveNext
Loop

看看进入了if语句没有?每个条件进行测试,不要用那么多and .
Jaron 2004-08-01
  • 打赏
  • 举报
回复
这样的做法并不好,还不如在SQL语句中用Where 语句判断,这样做的缺点:返回的数据太多,占用太多的资源
SQL语句参考:
Select cplx,pp,jg from [table] where cplx='cplx取值'
Jaron 2004-08-01
  • 打赏
  • 举报
回复
response.write request("cplx") = rs(1) '<--返回 True or False ?
response.write clng(request("cplx")) = rs(1) '<--返回 True or False ?
zhoujie19820204 2004-08-01
  • 打赏
  • 举报
回复
没有错误信息,浏览器可以正确解释,但是没有得到预期的结果
加载更多回复(3)

28,409

社区成员

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

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