修改多条记录无法成功~

ufonpyzyou 2008-05-30 04:59:02
请各位高手帮忙看看,有一个问题,我要实现的功能是:选中多条记录,然后将选中的记录传到另一个页面修改保存,代码如下,但是提交后却只能够修改第一条记录,其他记录均未修改成功,但是将输出语句放在循环体中却能输出每一条记录。

if request.Form("submit")="入库选中订单" then
ckb=request.form("chkb")
if ckb<>empty then
setArry=split(ckb,",")
for i=0 to UBound(setArry)
sql2="Update [Order] set In_state=1 where Orderid='"&setArry(i)&"'"
conn.execute(sql2)
//response.Write(setArry(i))
//response.Write(i&"<p>")
next
response.Write("<script language='javascript'>alert('成功入库所有订单!');window.document.location.href='order_manager.asp';</script>")
else
response.Write("错误!")
end if

end if
...全文
71 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ufonpyzyou 2008-05-30
  • 打赏
  • 举报
回复
非常感谢楼上的大大,按你的方法解决了~~
如果有可能,能解释一下我的为什么不行吗~?谢谢了
shaily 2008-05-30
  • 打赏
  • 举报
回复
修改一下,使用for each in 语句

if request.Form("submit")="入库选中订单" then
ckb=request.form("chkb")
if ckb <>empty then
setArry=split(ckb,",")
for each i in request.form("chkb")
sql2="Update [Order] set In_state=1 where Orderid='"&i&"'"
conn.execute(sql2)
next
response.Write(" <script language='javascript'>alert('成功入库所有订单!');window.document.location.href='order_manager.asp'; </script>")
else
response.Write("错误!")
end if

end if
ufonpyzyou 2008-05-30
  • 打赏
  • 举报
回复
楼上的大侠,我的orderid是文本类型
虽然修改字段类型可能能解决问题,
但是我真搞不明白用上面那个怎么会只修改一条记录~
ld2099 2008-05-30
  • 打赏
  • 举报
回复
如果orderID是数字类型的,这样写不更好,还用循环干啥
sql2="Update [Order] set In_state=1 where Orderid In("&ckb&")"


28,408

社区成员

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

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