ASP incluant des fichiers


La directive #include

Vous pouvez insérer le contenu d'un fichier ASP dans un autre fichier ASP avant que le serveur ne l'exécute, avec la directive #include.

La directive #include est utilisée pour créer des fonctions, des en-têtes, des pieds de page ou des éléments qui seront réutilisés sur plusieurs pages.


Comment utiliser la directive #include

Voici un fichier appelé "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>

Voici le fichier "wisdom.inc":

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

Voici le fichier "time.inc":

<%
Response.Write(Time)
%>

Si vous regardez le code source dans un navigateur, il ressemblera à ceci :

<!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>


Syntaxe pour inclure des fichiers

Pour inclure un fichier dans une page ASP, placez la directive #include dans les balises de commentaire :

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

or

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

Le mot clé virtuel

Utilisez le mot clé virtual pour indiquer un chemin commençant par un répertoire virtuel.

Si un fichier nommé "header.inc" réside dans un répertoire virtuel nommé /html, la ligne suivante insérera le contenu de "header.inc":

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

Le mot clé du fichier

Utilisez le mot-clé file pour indiquer un chemin relatif. Un chemin relatif commence par le répertoire qui contient le fichier inclus.

Si vous avez un fichier dans le répertoire html et que le fichier "header.inc" réside dans html\headers, la ligne suivante insérera "header.inc" dans votre fichier :

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

Notez que le chemin d'accès au fichier inclus (headers\header.inc) est relatif au fichier inclus. Si le fichier contenant cette instruction #include n'est pas dans le répertoire html, l'instruction ne fonctionnera pas.


Conseils et remarques

Dans les sections ci-dessus, nous avons utilisé l'extension de fichier ".inc" pour les fichiers inclus. Notez que si un utilisateur essaie de parcourir directement un fichier INC, son contenu sera affiché. Si votre fichier inclus contient des informations confidentielles ou des informations que vous ne voulez pas que les utilisateurs voient, il est préférable d'utiliser une extension ASP. Le code source d'un fichier ASP ne sera pas visible après l'interprétation. Un fichier inclus peut également inclure d'autres fichiers, et un fichier ASP peut inclure plusieurs fois le même fichier.

Important : Les fichiers inclus sont traités et insérés avant l'exécution des scripts. Le script suivant ne fonctionnera PAS car ASP exécute la directive #include avant d'attribuer une valeur à la variable :

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

Vous ne pouvez pas ouvrir ou fermer un délimiteur de script dans un fichier INC. Le script suivant ne fonctionnera PAS :

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

Mais ce script fonctionnera :

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