VBScript 返回错误 "Name redefined"



我有一个警报框,如果我当前在测试数据库中,我希望警报框与实时数据库具有不同的文本。

所以我声明了一个名为 isTestDb 的变量并将其设置为 True ,但我不断收到这个烦人的错误:

Microsoft VBScript compilation error '800a0411'
Name redefined
myfiles/conn_open.asp, line 12
Dim isTestDb
----^

这是我的简单代码,它位于包含中,其级别比我进行条件检查的位置高得多,我假设这不是问题。

Dim isTestDb
isTestDb = True

-- Much Later in another file somehwere
If isTestDb Then
    Response.Write("<h1>It is set to True</h1>")
    Response.End
Else
    Response.Write("<h1>It is set to False</h1>")
    Response.End
End If

我已经检查了我所有的工作目录,我确定该变量没有在其他地方以相同的名称设置,我什至为变量尝试了不同的名称并得到了完全相同的错误。

就我而言,这是因为我在.asp文件中使用了两次引用同一文件:

<!--#include file="myFile.asp">

引用的文件包含声明,因此第二个声明与第一个声明冲突

发生这种情况是因为变量 isTestDb 已经在另一个页面中定义。

我不知道

为什么,但是当我删除Dim isTestDb行时,现在一切都按预期工作!! :/

也可能

是因为您正在包含已包含在其他包含文件中的文件。

例如:文件 a.asp 包括 x.asp。在您的主文件中,您包括以下内容:

<!--#include file="a.asp">
<!--#include file="x.asp">

相关内容

最新更新