ASP compresi i file


La direttiva #include

È possibile inserire il contenuto di un file ASP in un altro file ASP prima che il server lo esegua, con la direttiva #include.

La direttiva #include viene utilizzata per creare funzioni, intestazioni, piè di pagina o elementi che verranno riutilizzati su più pagine.


Come utilizzare la direttiva #include

Ecco un file chiamato "mypage.asp":

<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p><!--#include file="wisdom.inc"--></p>
<h3>The time is:</h3>
<p><!--#include file="time.inc"--></p>
</body>
</html>

Ecco il file "wisdom.inc":

"One should never increase, beyond what is necessary,
the number of entities required to explain anything."

Ecco il file "time.inc":

<%
Response.Write(Time)
%>

Se guardi il codice sorgente in un browser, sarà simile a questo:

<!DOCTYPE html>
<html>
<body>
<h3>Words of Wisdom:</h3>
<p>"One should never increase, beyond what is necessary,
the number of entities required to explain anything."</p>
<h3>The time is:</h3>
<p>11:33:42 AM</p>
</body>
</html>


Sintassi per l'inclusione di file

Per includere un file in una pagina ASP, inserisci la direttiva #include all'interno dei tag di commento:

<!--#include virtual="somefilename"-->

or

<!--#include file ="somefilename"-->

La parola chiave virtuale

Utilizzare la parola chiave virtual per indicare un percorso che inizia con una directory virtuale.

Se un file denominato "header.inc" risiede in una directory virtuale denominata /html, la riga seguente inserirà il contenuto di "header.inc":

<!-- #include virtual ="/html/header.inc" -->

La parola chiave del file

Utilizzare la parola chiave file per indicare un percorso relativo. Un percorso relativo inizia con la directory che contiene il file incluso.

Se hai un file nella directory html e il file "header.inc" risiede in html\headers, la seguente riga inserirà "header.inc" nel tuo file:

<!-- #include file ="headers\header.inc" -->

Si noti che il percorso del file incluso (headers\header.inc) è relativo al file incluso. Se il file contenente questa istruzione #include non è nella directory html, l'istruzione non funzionerà.


Suggerimenti e note

Nelle sezioni precedenti abbiamo utilizzato l'estensione del file ".inc" per i file inclusi. Si noti che se un utente tenta di sfogliare direttamente un file INC, verrà visualizzato il suo contenuto. Se il file incluso contiene informazioni riservate o informazioni che non si desidera che gli utenti vedano, è meglio utilizzare un'estensione ASP. Il codice sorgente in un file ASP non sarà visibile dopo l'interpretazione. Un file incluso può includere anche altri file e un file ASP può includere lo stesso file più di una volta.

Importante: i file inclusi vengono elaborati e inseriti prima dell'esecuzione degli script. Il seguente script NON funzionerà perché ASP esegue la direttiva #include prima di assegnare un valore alla variabile:

<%
fname="header.inc"
%>
<!--#include file="<%fname%>"-->

Non è possibile aprire o chiudere un delimitatore di script in un file INC. Il seguente script NON funzionerà:

<%
For i = 1 To n
  <!--#include file="count.inc"-->
Next
%>

Ma questo script funzionerà:

<% For i = 1 to n %>
  <!--#include file="count.inc" -->
<% Next %>