Vous êtes sur la page 1sur 26

Partie 1

ASP-Notion de bases

Pr. Youness KHAMLICHI

Active Server Page


La technologie ASP permettant de rendre le contenu dun site dynamique

cest une solution 100% Microsoft


Utilise (IIS) : serveur web (Internet Information Server)

ASP-Notion de bases

Pr. Youness KHAMLICHI

Caractristiques

dun fichier ASP

Son extension : *.asp

La balise: <% %>


Une page ASP contient du code HTML et un ou plusieurs Scripts en langage VBScript ou Javascript.

ASP-Notion de bases

Pr. Youness KHAMLICHI

Fonctionnement de lASP Un script ASP sexcute lorsquun navigateur appelle une page ayant cette extension sur le serveur web.

Le serveur lance alors le module ASP et lui transmet le fichier.


Le module parcourt le fichier la recherche de la balise <% %>. Au cours de cette action, ds que le module ASP rencontre un script encadr par la balise <% %>, il lexcute et renvoie ensuite au serveur du code HTML que celui-ci transmet, son tour, au navigateur.
le navigateur du client naie pas accs au code ASP

ASP-Notion de bases

Pr. Youness KHAMLICHI


COTE SERVEUR CODE ASP HTML

COTE CLIENT CODE HTML VISUEL

Hello world
Visuel navigateur Hello <br> world Flux de donnes serveur client Afficher la source

<%=Hello <br> world"%> Index.asp : Code ASP

ASP-Notion de bases

Pr. Youness KHAMLICHI

<HTML> <HEAD>

<TITLE>Les Active Server Pages</TITLE>


<SCRIPT LANGUAGE= "VBScript" RUNAT="Server"> </SCRIPT>

Pr. Youness KHAMLICHI

ASP-Notion de bases

Il est possible d'insrer soit un script, soit une instruction seule.


<Script languange="Vbscript" RunAt="Server"> ---- Code VBScript <Script>

<% ---- Code VBScript %>

Les deux script sexcutera ct serveur.

ASP-Notion de bases

Pr. Youness KHAMLICHI

index.html <html> <body> Hello ENSA Student !!! </body> </html>


Ces deux pages sontelles quivalentes ? Rsultat Performance

index.asp Affichages <html> <body> <% response.write(Hello ENSA Studient) %> </body> </html>
ASP-Notion de bases Pr. Youness KHAMLICHI 8

<html>

<script language="VBScript" runat="SERVER"> response.write("hello ENSA Student !!! ") </script> </body> </html>

<body>

ASP-Notion de bases

Pr. Youness KHAMLICHI

<% = mot rserv%> : ajoute au source du fichier la valeur de la fonction ou de la variable dsigne

Fonctions <html> VBScript <body> Nous sommes le <% = date %>, il est <% = time %> <% DIM monNom Dclaration dune variable monNom = "Youness" %> Hello <% = monNom %> Initialisation dune variable </body> Affichage dune variable </html>

ASP-Notion de bases

Pr. Youness KHAMLICHI

10

<%OPTION EXPLICIT%>
placer sur la premire ligne dune page ASP Provoque des erreurs de compilation si des variables ne sont pas dclares

Dclaration :
Concatnation :

DIM
response.write("Hello" & monNom)

Exemple :
<% dim x X=12 Response.write(x) %>

ASP-Notion de bases

Pr. Youness KHAMLICHI

11

Tableau Statique (dimension fixe)

Dclaration : DIM tab(nombre dlments) Accs un lment : <%=tab(indice)%> Numrotation partir de lindice 1

Tableau multidimensionnel (jusqu 60 dimensions !)


DIM tab2(dimension1,dimension2)

Tableau Dynamique (dimension variable)

Dclaration DIM tab() Redimensionnement REDIM tab(dimension) Prserver les anciennes valeurs REDIM PRESERVE tab(dimension)

ASP-Notion de bases

Pr. Youness KHAMLICHI

12

<%@ language="vbscript"%> <html> <body> <% for i =1 to 200%> bonjour<br> <%next%> </body> </html>

dbut de la page

utilisation de la boucle FOR dbut 1 affichage du mot bonjour rptition de la boucle jusqu la fin (200 fois)

ASP-Notion de bases

Pr. Youness KHAMLICHI

13

POUR <% FOR nomVar = 1 TO 10 [step] Traitement NEXT %>

TANT QUE <% WHILE condition traitement WEND %>

FAIRE JUSQUA

<% DO traitement LOOP UNTIL condition %>

Tableaux/Collections <% FOR EACH elt IN tab/col traitement NEXT %>

FAIRE TANT QUE <% DO WHILE condition traitement LOOP %>

ASP-Notion de bases

Pr. Youness KHAMLICHI

14

INSTR : Renvoie la position de la premire occurrence d une chane dans une autre LCASE : Renvoie une chane convertie en minuscules UCASE : Renvoie une chane convertie en majuscules ASC : Code ASCII du premier caractre de la chane CHR : Caractre correspondant un code ASCII INT : Partie entire CINT : Convertir en entier CSTR : Convertir en String RANDOMIZE : Initialiser le gnrateur de variables alatoires RND : Renvoyer un nombre alatoire entre 0 et 1

ASP-Notion de bases

Pr. Youness KHAMLICHI

15

Exercice 1 : Crer un script ASP permettant dafficher les entiers de 0 100 (un entier par ligne) Exercice 2 : Ecrire un script ASP permettant de crer un tableau de 101 composantes (contenant les entiers de 100 200) et de les afficher (un par ligne) Exercice 3 : Crer un script ASP permettant dafficher un mot de 5 lettres majuscules choisies alatoirement

Exercice 4 : Ecrire une fonction ASCII(n) qui affiche les n premiers caractres ASCII dans un tableau HTML

ASP-Notion de bases

Pr. Youness KHAMLICHI

16

Fonctions

FUNCTION nomFonction(liste de paramtres) Traitements [EXIT FUNCTION] nomFonction = valeur END FUNCTION

Sous-routines

SUB nomRoutine(liste de paramtres) Traitements [EXIT SUB] END SUB

Appels :

CALL nomProcdure (listArgs) nomFonction|Procdure listArgs retour = nomFonction (listArgs)

ASP-Notion de bases

Pr. Youness KHAMLICHI

17

<html> <head> <% Function afficher(texte) Response.write(texte & "<BR>") Response.write(texte) End Function %> </head> <body> <% call afficher("Bonjour tous ") %> </body> </html>
1 8

ASP-Notion de bases

Pr. Youness KHAMLICHI

Les pages ASP utilisent la commande INCLUDE qui accepte deux attributs : file ou virtual.

La syntaxe est la suivante :


<!--#include file="fichier__inclure.ext"-->

Ou bien :
<!--#include virtual="fichier__inclure.ext"-->

ASP-Notion de bases

Pr. Youness KHAMLICHI

1 9

Diffrence : file ou virtual. file va inclure le fichier fichier_a_inclure.ext partir du rpertoire dans lequel on se trouve virtual va inclure ce mme fichier depuis la racine WEB

<!--#include file="includes/fichier_a_inclure.ext"--> <!--#include virtual="/sous-dossier/includes/fichier_a_inclure.ext"-->

ASP-Notion de bases

Pr. Youness KHAMLICHI

20

Une autre solution consiste utiliser la mthode Execute de l'objet Server (ASP 3.0).
<% ' du code de la page en cours fichier = "fichier_a_inclure_executer.ext" Server.Execute (fichier)

' du code de la page en cours %>

Le seul inconvnient de cette mthode est que les variables et fonctions dfinies dans le fichier appelant n'existent pas dans le fichier appel et vice-versa.
2 1

ASP-Notion de bases

Pr. Youness KHAMLICHI

<FORM METHOD="POST" ou "GET" ACTION="url" > ... </FORM>

METHOD indique sous quelle forme seront envoyes les rponses "POST" est la valeur qui correspond un envoi de donnes stockes dans le corps de la requte, "GET" correspond un envoi des donnes codes dans l'URL, et spares de l'adresse du script par un point d'interrogation

ACTION indique l'adresse d'envoi (script[.asp ou .pl ou autre] ou adresse email (mailto:adresse.email@machine))

ASP-Notion de bases

Pr. Youness KHAMLICHI

22

ASP-Notion de bases

Pr. Youness KHAMLICHI

23

crire le code source en HTML du formulaire suivant: Avec :


Fonction = (Enseignant, tudiant, Ingnieur, Retrait, Autre)

ASP-Notion de bases

Pr. Youness KHAMLICHI

24

<FORM method=post action="script/script.asp"> Enregistrement d'un utilisateur <TABLE BORDER=0> <TR> <TD>Nom</TD> <TD> <INPUT type=text name="nom"> </TD> </TR> <TR> <TD>Prnom</TD> <TD> <INPUT type=text name="prenom"> </TD> </TR> <TR> <TD>Sexe</TD> <TD> Homme : <INPUT type=radio name="sexe" value="M"> <br>Femme : <INPUT type=radio name="sexe" value="F"> </TD> </TR> <TR> <TD>Fonction</TD> <TD> <SELECT name="fonction"> <OPTION NAME="enseignant">Enseignant</OPTION> <OPTION NAME="etudiant">Etudiant</OPTION> <OPTION NAME="ingenieur">Ingnieur</OPTION> <OPTION NAME="retraite">Retrait</OPTION> <OPTION NAME="autre">Autre</OPTION> </SELECT> </TD> </TR> <TR> <TD>Commentaires</TD> <TD> <TEXTAREA rows="3" name="commentaires">Tapez ici vos commentaires</TEXTAREA> </TD> </TR> <TR> <TD COLSPAN=2> <INPUT type="submit" value="Envoyer"> </TD> </TR> </TABLE> </FORM>
ASP-Notion de bases Pr. Youness KHAMLICHI 25

Comment afficher le rsultat ?


Comme :
Bonjour Mr. X Votre fonction est : Y

ASP-Notion de bases

Pr. Youness KHAMLICHI

26