asp死循环???

2025-12-16 23:04:44
推荐回答(5个)
回答1:

四个错误。
第一个:
texta=Request.Form("aa")
set rs=conn.execute(aa)
第二句应该是set rs=conn.execute(texta) ,aa只是一个控件的名字而已,不是变量啊。

第二个:set rs=conn.execute("select * fron name") 应该是from。不是fron

第三个:rs.close conn.close出现两次,但是你只开了一个查询,怎么能关闭两次呢。同样的你在前面已经关闭了查询,后面的循环就无用啦。

第四个:"
"& "

"&rs("name")这里的HTML代码也有问题。
应该和
直接一起写,没必要隔开。而且
应该和
对应一起使用,你的怎么缺少了一个呢?

回答2:

1.set rs=conn.execute("select * from name")
2.如果from没错,那么死机跟这段程序应该没什么关系
因为里边只有一个while循环
所以一定和这个while循环有关,但跟这段代码没有关系
是因为 在while上边
rs已经关闭了:rs.close
如果运行就会出错并提示你,记录集已经关闭了。但是你没有提示反而死机,这很有可能是因为你上面的程序也引用了rs,而且没有注销掉。
你在这段程序上面加上个
rs.close
set rs=nothing
再试试

回答3:

循环条件是not
PID
=
0,PID之前应该有赋值过吧,而每次循环中变量PID总被赋值为PID
=
rs("ParentID"),且作为下一次查询的条件值。
有两种情况可能造成死循环:
1.如果从数据库中读出的ParentID字段值永不为零的话,这个循环就会永无休止。
2.如果有一条记录中categoryid字段的值与ParentID字段的值相同的话,当查询到这条记录时立即会进入死循环。

回答4:

db="/vb/data/hello.mdb"
数据库路径不正确,应该转换成绝对路径;使用app.Path关键字

set rs=conn.execute("select * fron name")
应修改为:
set rs=conn.execute("select * from name")

if Request.Form("aa") <>"" then
texta=Request.Form("aa")
set rs=conn.execute(aa)
修改为:
if Request.Form("aa") <>"" then
texta=Request.Form("aa")
set rs=conn.execute(texta)

你已经关闭了RS和CONN对象,应该将第一个rs.close
conn.close
删除。

原因是多方面的,例如数据库路径不对,set rs=conn.execute(texta)误为set rs=conn.execute(aa),由于aa是空字符串,无法连接;等等等等。

回答5:

不是死循环啊
因为set rs=conn.execute("select * fron name")
写的不对啊,单词错了应该是form不是fron