如何在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才两天,表笑我问得弱智,先谢谢了哈!!!
...全文
2649 点赞 收藏 23
写回复
23 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
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
没有错误信息,浏览器可以正确解释,但是没有得到预期的结果
回复
加载更多回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-01 09:10
社区公告
暂无公告