Un script ASP est un simple fichier texte contenant des instructions écrites à l'aide
de caractères ASCII 7 bits (des caractères non accentués)
stocké sur le serveur dans un fichier possédant l'extension .asp.
Afin de permettre au serveur de déterminer si le code doit être interprété
ou simplement renvoyé tel quel au client, un balisage spécifique a été mis au point. Il est ainsi
possible de mêler HTML et ASP au sein d'un même fichier. Les scripts ASP sont donc des fichiers
texte dans lesquels cohabitent les instructions ASP et le texte de la réponse (la plupart du temps il s'agira
de code HTML, c'est ce que l'on considérera par la suite, mais il est également possible de produire
du javascript ou bien du XML).
Ainsi, lorsqu'un navigateur (le client) désire accéder à une page dynamique
réalisé avec la technologie ASP:
- le serveur reconnait qu'il s'agit d'un fichier ASP grâce à son extension
- il lit le fichier ASP
- Dès que le serveur rencontre une balise indiquant que les lignes suivantes sont du code ASP,
il "passe en mode ASP", ce qui signifie qu'il ne lit plus les instructions: il les interprète!
- Lorsque le serveur rencontre une instruction, il la transmet à l'interpréteur
- L'interpréteur exécute l'instruction puis envoie les sorties éventuelles au serveur
- A la fin du script, le serveur transmet le résultat au client (le navigateur)
|
Un script ASP est interprété par le serveur, les utilisateurs ne peuvent donc pas voir le code source!
De plus, dans la mesure où l'interprétation
du code se fait sur le serveur, aucune modification n'est à réaliser sur les navigateurs !
|
Les scripts ASP, une fois interprétés par le serveur ont donc pour effet de produire
l'envoi de la réponse HTTP au navigateur, ainsi que des traitements éventuels effectués au niveau
du serveur et non visible dans le code résultant (connexion à une base de données par exemple).
Afin de définir le langage des scripts inclus dans le fichier et
devant être interprétés par le serveur, ASP propose un balisage (ou tag) spécifique.
En effet, le langage utilisé pour écrire les scripts peut-être
au choix le VBscript ou bien
le Jscript, c'est-à-dire une version de l'ECMAScript propre à Microsoft.
<SCRIPT language="VBScript|Jscript"
[runat="server|client"]
[type="text/vbscript | jscript"]
[src="url"]
>
code du script
</SCRIPT>
Voici l'explication des propriétés de la balise
- la balise language est obligatoire et définit le langage devant être utilisé lors
de l'interprétation
- la balise optionnelle runat permet de définir à quel niveau doit être interprété
le script. Si la valeur server est définie le serveur se chargera d'interpréter le code du script
et renverra les éventuelles réponses au navigateur. Lorsque la valeur client est par contre définie,
le code sera renvoyé tel quel (sans interprétation) au navigateur, qui sera chargé, s'il implémente le langage
approprié d'interpréter le script. Par défaut la valeur client est donnée à cet attribut. Attention donc
à veiller à définir la valeur server !
- la balise optionnelle src enfin permet de faire appel à une portion de code définie dans un fichier
extérieur repéré par son emplacement (URL ou chemin relatif).
Dans la mesure où la notation ci-dessus est assez lourde, ASP propose une façon simplifiée
de définir un bloc de script :
<%
code du script
%>
Cette notation simplifiée ne définit toutefois pas le type de langage
à utiliser lors de l'interprétation. Il est donc nécessaire (ou du moins préférable)
d'avoir recours à la directive <%@ LANGUAGE %> en début de fichier
afin de définir le langage de script primaire de la page. La syntaxe de
cette commande est la suivante:
<%@ LANGUAGE="LangageDeScript" %>
LangageDeScript représente bien évidemment le langage de script
qui sera utilisé dans la suite du fichier, c'est-à-dire Jscript ou plus généralement
VBscript.
Un script ASP est donc un fichier texte dont l'extension est .asp, contenant
des portions de script, c'est-à-dire des lignes de
code interprétées par le serveur Web, encadrés par des balises
spécifiques.
Voici un exemple de script ASP écrit en VBScript:
<%@ LANGUAGE="VBSCRIPT" %>
<HTML>
<HEAD>
<TITLE>Exemple de script ASP</TITLE>
</HEAD>
<BODY>
<% FOR i = 1 to 10 %>
Bienvenue sur www.commentcamarche.net
<% Next %>
</BODY>
</HTML>
Ce script a pour effet de répéter 10 fois l'affichage de la chaîne
Bienvenue sur www.commentcamarche.net. Voici maintenant le même code écrit en Jscript:
<%@ LANGUAGE="JSCRIPT" %>
<HTML>
<HEAD>
<TITLE>Exemple de script ASP</TITLE>
</HEAD>
<BODY>
<% for(i=1;i<=10;i++){%>
Bienvenue sur www.commentcamarche.net
<% } %>
</BODY>
</HTML>
|