ASP Classic - 包含连接文件时出错

时间:2013-10-14 13:18:35

标签: sql-server-2008 asp-classic

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

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时服务器上发生错误。请   联系系统管理员。如果您是系统管理员   请点击此处了解有关此错误的更多信息。

如果我不使用包含文件,并将其全部写在一个文件中,则可以正常工作。

如何解决此错误?

3 个答案:

答案 0 :(得分:1)

尝试这样:

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

答案 1 :(得分:1)

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

脚本位于顶层

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

答案 2 :(得分: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")
%>

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