从vbscript子脚本返回会导致ASP页出错

从vbscript子脚本返回会导致ASP页出错,vbscript,asp-classic,Vbscript,Asp Classic,这让我发疯了。当我从这个sub返回时,我的网页上出现了一个错误(“500-内部服务器错误”)。它执行得很好,并且完成了它应该做的事情:将用户记录(MemID)添加到事件(EventID)的聊天表中(如果尚未添加)。第一个查询是确定是否已经有记录。如果不是,INSERT语句将添加一条记录。该错误发生在sub运行之后 Sub NewView (EventID) MemID=Session("MemID") If MemID>0 then

这让我发疯了。当我从这个sub返回时,我的网页上出现了一个错误(“500-内部服务器错误”)。它执行得很好,并且完成了它应该做的事情:将用户记录(MemID)添加到事件(EventID)的聊天表中(如果尚未添加)。第一个查询是确定是否已经有记录。如果不是,INSERT语句将添加一条记录。该错误发生在sub运行之后

Sub NewView (EventID)
    MemID=Session("MemID")
    
    If MemID>0 then
        Set cn5=Server.CreateObject("ADODB.connection")
        cn5.open application("gbConnect")    
        SQL="SELECT Chat.MemID, Chat.EventID FROM Chat WHERE Chat.MemID=" & MemID & " AND Chat.EventID=" & EventID & ";"  
        cn5.cursorLocation=3

        Set Rst=cn5.execute(SQL)
        
        If Rst.recordcount = 0 then
            Comment="is watching"
            SQL="INSERT INTO Chat ( MemID, EventID, Comment ) SELECT " & MemID & "," & EventID & ", '" & Comment & "';"
            cn5.execute(SQL)
            Set cn5=nothing
        End If
    End If 
End Sub
在页面上:
NewView(EventID)'从此子系统返回会导致错误!“500-内部服务器错误。”

正常。我想出来了。我上了一堂关于变量范围的课。在子页面中设置变量Rst(记录集)会破坏主页上的相同变量。现在我得等我的头发长回来。

这能回答你的问题吗?启用详细错误应该提供导致错误的确切行,没有它,任何人都无法提供帮助。
选项显式
是您的朋友,您不应该使用没有
Dim
的变量(尤其是在
函数
)。