asp中关于select in的操作
asp网页,从上一个页面中的复选框中取得了id值,再在数据库中进行操作.以下是代码uid=replace(request.Form("menberid"),"","")s...
asp网页,从上一个页面中的复选框中取得了id值,再在数据库中进行操作.以下是代码
uid=replace(request.Form("menberid")," ","")
set rs=server.CreateObject("adodb.recordset")
rs.open "select point from menber where id in ("& uid &")",conn,1,3
rs("point")=rs("point")+1
rs.update
rs.close
set rs=nothing
这里我有两点不明白.
接收到的uid都有一个空格.如1, 2, 3 这是为什么?一定要用replace才行么?
第二点,为什么我用上面取得的值进行了数据库操作,都只有最后一个id的内容更新了,也就是说,取得的值只有一个有效?
肯定是一样的,都是从数据库中读取的,全loop过来的.是一样,而且,我从新写个接收id的页面查看了一下,可以接收到多个ID,
jlilo 你说明白点,要怎么做? 展开
uid=replace(request.Form("menberid")," ","")
set rs=server.CreateObject("adodb.recordset")
rs.open "select point from menber where id in ("& uid &")",conn,1,3
rs("point")=rs("point")+1
rs.update
rs.close
set rs=nothing
这里我有两点不明白.
接收到的uid都有一个空格.如1, 2, 3 这是为什么?一定要用replace才行么?
第二点,为什么我用上面取得的值进行了数据库操作,都只有最后一个id的内容更新了,也就是说,取得的值只有一个有效?
肯定是一样的,都是从数据库中读取的,全loop过来的.是一样,而且,我从新写个接收id的页面查看了一下,可以接收到多个ID,
jlilo 你说明白点,要怎么做? 展开
展开全部
首先,uid接收的是一个数组,这个数组有两个元素,1,2,3。所以有逗号隔开。
而replace是替换符号。你这里,是把空格去掉。然后赋值给uid
为什么只有最后一个被修改,因为你查询的结果有三个满足条件,你却没有使用循环,一一做修改。只改了最后一个。为什么是最后一个呢?因为在查询时,默认是按升序排列的。
应该使用循环(循环语句有几种,我这有while....wend):
set rs=server.CreateObject("adodb.recordset")
rs.open "select point from menber where id in ("& uid &")",conn,1,3
while not rs.eof
rs("point")=rs("point")+1
rs.update
rs.movenext
wend
rs.close
set rs=nothing
而replace是替换符号。你这里,是把空格去掉。然后赋值给uid
为什么只有最后一个被修改,因为你查询的结果有三个满足条件,你却没有使用循环,一一做修改。只改了最后一个。为什么是最后一个呢?因为在查询时,默认是按升序排列的。
应该使用循环(循环语句有几种,我这有while....wend):
set rs=server.CreateObject("adodb.recordset")
rs.open "select point from menber where id in ("& uid &")",conn,1,3
while not rs.eof
rs("point")=rs("point")+1
rs.update
rs.movenext
wend
rs.close
set rs=nothing
展开全部
1.复选框 传递过来的是一个数组
格式,当然就含有 那种1,2,3,4等
replace 是asp的一个替换函数,作用是把数组中间的逗号替换掉。
2.你用那种方式去更新是不科学的
最好是用循环,嵌套进去就可以了
格式,当然就含有 那种1,2,3,4等
replace 是asp的一个替换函数,作用是把数组中间的逗号替换掉。
2.你用那种方式去更新是不科学的
最好是用循环,嵌套进去就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的checkbox的名字是不是一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询