0

我在同一个文件夹中有两个文件,例如:

Example
|-connect.asp
|-default.asp

connect.asp 包含:

   <%
    'declare the variables 
    Dim Connection
    Dim ConnString

    'define the connection string, specify database driver
    ConnString="DRIVER={SQL Server};SERVER=myServername;UID=myUsername;" & _ 
               "PWD=myPassword;DATABASE=myDatabasename"

    'create an instance of the ADO connection and recordset objects
    Set Connection = Server.CreateObject("ADODB.Connection")

    'Open the connection to the database
    Connection.Open ConnString
 %>

和 default.asp 包含:

<!-- #include virtual="connect.asp" -->
<% 
Dim Recordset
Set Recordset = Server.CreateObject("ADODB.Recordset")
%>

但是当我运行 localhost/example 我得到一个错误:

处理 URL 时服务器发生错误。请联系系统管理员。如果您是系统管理员,请单击此处了解有关此错误的更多信息。

如果我不使用包含文件,并将其全部写入一个文件,那么它可以工作。

如何修复此错误?

4

3 回答 3

1

试试这样:

<!--#include file="connect.asp" -->
于 2013-10-14T13:22:55.623 回答
1

除了我在评论中提到的内容外,您的 include 语句的格式已关闭。

如果你要做一个虚拟包含,它应该是这样的:

<!-- #include virtual="/connect.asp" -->
<% 
Dim Recordset
Set Recordset = Server.CreateObject("ADODB.Recordset")
%>

如果你要做一个文件包含,它应该是这样的:

<!-- #include file="connect.asp" -->
<% 
Dim Recordset
Set Recordset = Server.CreateObject("ADODB.Recordset")
%>

虚拟包括从虚拟目录 ( ) 的根目录开始/并从那里开始。文件包含使用包含文件的页面的相对路径。

于 2013-10-14T17:40:00.503 回答
1

我在一个较旧的应用程序中遇到了类似的问题。我必须提供脚本的绝对路径。

如果脚本位于顶层

或者如果它在另一个文件夹中,例如“包含”

于 2013-10-14T13:24:10.847 回答