Initiation au web dynamique Licence Professionnelle
Initiation au web dynamique2 Sommaire Protocole HTTP Langage HTML Langage PHP Langage JSP Langage ASP
Initiation au web dynamique3 Langage ASP ASP (Active Server Pages) environnement de développement mis au point par Microsoft (1996) permet de rendre un site web dynamique (comme en PHP). L’extension des fichiers est en général.asp Utilisé en général sur un serveur Microsoft avec IIS Le code présent dans les pages ASP est du VbScript qui permet de manipuler des objets dont voici les principaux : Application : objet contenant les informations partagées par tous les visiteurs Session : objet permettant de conserver des informations propres à chaque utilisateur Server : contient des informations sur le serveur Web Request : permet de récupérer les informations envoyées au serveur dans la requête HTTP du client Response : permet de créer et d’envoyer la réponse HTTP au client Le VbScript est un langage de script HTML exécuté côté serveur => le code source n’est donc pas visible sur le navigateur client. (le Jscript peut également être utilisé dans les pages ASP)
Initiation au web dynamique4 Langage ASP Balises d’ouverture et de fermeture VersionDescription Notation longue <SCRIPT language="VBScript|Jscript" [runat="server|client"] [type="text/vbscript | jscript"] [src="url"]> ‘ code du script Notation Courte <% ‘ code du script %>
Initiation au web dynamique5 Langage ASP Notation Courte En utilisant la notation courte, on ne précise pas le langage utilisé, on peut donc en début de page utiliser le code suivant pour définir quel langage sera utilisé dans la suite de la page : (vbscript ou jscript)
Initiation au web dynamique6 Langage ASP Commentaires Une ligne de commentaire est une ligne se trouvant entre des balises VBscript et qui commence par une côte simple : ‘
Initiation au web dynamique7 Langage ASP Exemple : Hello World Exemple de script ASP
Initiation au web dynamique8 Langage ASP Variables Un nom de variables doit commencer par une lettre et ne doit pas dépasser 255 caractères. Avant de pouvoir utiliser une variable, il faut la déclarer : Dim maVariable [as type] Si le type n’est pas précisé, c’est le type Variant qui est utilisé.
Initiation au web dynamique9 Langage ASP Types de données boolean : true ou false byte : entier entre 0 et 255 date / time string long : entier long single : nombre à virgule double : nombre à virgule en double précision La fonction VarType permet de connaître le type de données d'une variable passée en paramètre
Initiation au web dynamique10 Langage ASP Types de données L’opérateur de concaténation de chaînes de caractères : &
Initiation au web dynamique11 Langage ASP Opérateurs TypeOpérateurDescription Affectation = Calcul +Addition -Soustraction -Négation (doit être utilisé seul) *Multiplication /Division ^puissance modmodulo (reste de la division entière du 1er opérande par le 2ème) Comparaison >Supérieur >=Supérieur ou égal <Inférieur <=Inférieur ou égal <>Différent =Égal Logiques AndEt OrOu XorOu exclusif
Initiation au web dynamique12 Langage ASP Structures de contrôle Si Alors Sinon if condition then liste d'instructions elseif autre_condition autre série d'instructions else dernière série d'instructions End If
Initiation au web dynamique13 Langage ASP Structures de contrôle Tant que Do While condition liste d'instructions Loop
Initiation au web dynamique14 Langage ASP Structures de contrôle Faire… tant que Do liste d'instructions Loop While condition
Initiation au web dynamique15 Langage ASP Structures de contrôle Pour for compteur = Début To Fin [Pas Valeur] liste d'instructions Next Exemple : for i = 1 To 5 Response.Write i Next
Initiation au web dynamique16 Langage ASP Structures de contrôle Pour chaque For Each Valeur In Valeurs liste d'instructions Next Element
Initiation au web dynamique17 Langage ASP Structures de contrôle Selon cas… faire Select Case (Expression) Case Valeur1: Liste d'instructions Case Valeur2: Liste d'instructions Case Valeur...: Liste d'instructions Case Else // cas par défaut Liste d'instructions End Select
Initiation au web dynamique18 Langage ASP Fonctions function test(maVariable) ' en entrée : un nombre ' retourne ce nombre + 2 test=maVariable+2 end function Procédures sub test ‘ Code ici … end sub
Initiation au web dynamique19 Langage ASP Inclusion de fichier En chemin relatif : (relatif à la position du fichier qui demande cette inclusion) En chemin absolu : (par rapport à la racine du site Web)
Initiation au web dynamique20 Langage ASP Redirection vers une autre page Pour effectuer une redirection, on utilisera l’objet Response on fera appel à la méthode Redirect, comme dans l’exemple ci-dessous :
Initiation au web dynamique21 Langage ASP Accès à une base de données MySQL En ASP, il est possible d’accéder à plusieurs types de bases de données (Oracle, SQL Server, Access, MySQL, …) pour cela, le moteur ASP va utiliser un lien ODBC. Installation du connecteur ODBC pour Mysql, téléchargeable à partir de l’adresse suivante : Depuis les outils d’administration de votre serveur, créer une « source de données système » vous permettant d’établir une connexion à votre base de données Mysql.
Initiation au web dynamique22 Langage ASP Exemple : Accès à une base de données MySQL ' Connexion à la base en utilisant le lien ODBC Set conn = Server.CreateObject("ADODB.connection") Conn.Open "nom_dsn", "user", "mot-de-passe" ' creation de la requete SQL SQL = "Select * from matable" ' creation d'un recordset, permet de récupérer le résultat de la requete Set rs = server.CreateObject("ADODB.Recordset") ' exécution de la requete rs.open SQL,conn,1,1 ' parcours du recordset et affichage des données While not rs.eof Response.write rs("champ1") rs.movenext wend 'fermeture du recordset RS.Close ' fermeture de la connexion à la base de données Conn.close
Initiation au web dynamique23 Langage ASP Exemple : Accès à une base de données MySQL (pour les requêtes ne retournant pas de résultat (insert, delete, update, …) ' Connexion à la base en utilisant le lien ODBC Set conn = Server.CreateObject("ADODB.connection") Conn.Open "nom_dsn", "user", "mot-de-passe" ' creation de la requete SQL SQL = "insert ….. " Conn.execute SQL ' fermeture de la connexion à la base de données Conn.close