2013-10-14 71 views
0

我有一樣的同一個文件夾的兩個文件:ASP經典 - 錯誤當包括連接文件

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") 
%> 

但是當我運行本地主機/例如我得到一個錯誤:

An error occurred on the server when processing the URL. Please contact the system administrator. If you are the system administrator please click here to find out more about this error.

如果我不使用包含文件,並將其全部寫入一個文件,那麼它就可以工作。

如何解決此錯誤?

+1

如果您有權訪問服務器,此頁面可能會幫助您獲得更多有用的錯誤消息http://www.chestysoft.com/asp-error-messages.asp – John

+0

您應該關閉IE中的友好錯誤消息,並確保服務器正在發送詳細的錯誤消息,以便我們可以獲得更有意義的錯誤消息。或者,編寫一些錯誤陷印代碼並在某處記錄詳細的錯誤消息 - 無論哪種方式知道具體的錯誤將有助於獲得更有意義的答案。 – AnonJr

回答

1

嘗試這樣的:

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

我遇到了與舊的應用程序類似的問題。我必須提供腳本的絕對路徑。

它的腳本是在頂層

或者,如果它在另一個文件夾,如「包括」

1

除了我在評論解決,您的格式包括語句是關閉。

如果你打算做一個虛擬的包括,它應該是這樣的:

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

如果你打算做一個文件包括,它應該是這樣的:

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

虛擬包括從虛擬目錄的根目錄開始(/)並從那裏開始。文件包括使用包含該文件的頁面中的相對路徑。