Microsoft VBScript 运行时错误 错误 '800a0009' 代码已贴求解决~

tonysan 2009-09-30 01:40:33
Microsoft VBScript 运行时错误 错误 '800a0009'

下标越界: '133'

Inc/DelGq.asp,行 42


代码如下




<%
dim sql,rs,win_id(),use_name(),user_id(),gq_date(),win_user(),win_pass(),sql1,sql2,i,j
set rs=server.createobject("adodb.recordset")

sql = "select * from 001_User where end_date<=Now() and user_type=true order by id desc"
rs.open sql,conn,1,1
i = 0
if not rs.eof then
do while not rs.eof
redim preserve use_name(i),user_id(i),gq_date(i)
use_name(i) = rs("User_name")
user_id(i) = rs("id")
gq_date(i) = rs("end_date")
i = i + 1
rs.movenext
loop
rs.close

sql = "select * from 001_Windows where user_id <> 0 order by id "
rs.open sql,conn,1,1
j = 0
do while not rs.eof
for i = 0 to ubound(user_id)
if rs("user_id") = user_id(i) then
redim preserve win_id(j),win_pass(j),win_user(j)
win_user(j) = rs("W_user")
win_pass(j) = rs("W_pass")
win_id(j) = rs("id")
j = j + 1
end if
next
rs.movenext
loop
rs.close
if j > 0 then

for i = 0 to ubound(win_id)
sql = "select * from 001_Gqwin where win_id = "& clng(win_id(i))
rs.open sql,conn,3,3
if rs.eof then
rs.addnew
rs("use_name") = use_name(i)
rs("win_id") = win_id(i)
rs("gq_date") = gq_date(i)
rs("win_user") = win_user(i)
rs("win_pass") = win_pass(i)
rs.update
end if
rs.close
next
end if
end if
sql1 = "update 001_User set user_type = false where end_date<=Now()"
conn.execute(sql1)
sql2 = "update 001_User set Windows_Id=0 where user_type = false"
conn.execute(sql2)
sql2 = "update 001_User set Gjid=0 where user_type = false"
conn.execute(sql2)
%>

...全文
131 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlh0011 2009-09-30
  • 打赏
  • 举报
回复
你问问题的方式不对,你得标出42行在哪啊,否则谁会有耐心去数到42行啊
街头小贩 2009-09-30
  • 打赏
  • 举报
回复
思维有问题吧!

28,406

社区成员

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

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