oct.-2000dess iidee © b. bah 1 rappel caractéristiques d’un fichier asp son extension : «...
Post on 04-Apr-2015
102 Views
Preview:
TRANSCRIPT
oct.-2000DESS IIDEE © B. BAH
1
Rappel
Caractéristiques d’un fichier ASP Son extension : « *.asp »
La balise: <% … %>
Son indépendance vis à vis de toute plate–forme, de tout langage de script et de tout navigateur.
oct.-2000DESS IIDEE © B. BAH
2
Rappel
Fonctionnement de l’ASP Un script ASP s’exécute lorsqu’un 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, dés que le module ASP rencontre un script encadré par la balise <% … %>, il l’exécute et renvoie ensuite au serveur du code HTML que celui-ci transmet, à son tour, au navigateur.
oct.-2000DESS IIDEE © B. BAH
3
oct.-2000DESS IIDEE © B. BAH
4
Rappel
Le Modèle objets d’ASP
L’objet Application : représente le site web c’est à dire l’ensemble des fichiers se trouvant dans le répertoire virtuel ou dans ses sous-répertoires.
L’objet Session : représente un utilisateur donné. Il permet de conserver des informations relatives au visiteur d’une page à l’autre tout au long de sa connexion. Il y a donc une session par visiteur.
oct.-2000DESS IIDEE © B. BAH
5
Rappel
Le Modèle objets d’ASP
L’objet Request : permet de récupérer les données issues d’un formulaire utilisant soit la méthode POST ou GET. Il permet également d’obtenir des informations sur le serveur, sur le navigateur client et de récupérer les cookies stockés sur la machine du visiteur.
L’objet Response : Contient la réponse HTTP, c’est à dire l’ensemble des informations à destination du navigateur client; comme par exemple l’écriture d’un cookie sur le disque dur du visiteur ou l’affichage d’une phrase à l’attention de celui-ci.
oct.-2000DESS IIDEE © B. BAH
6
Rappel
Le Modèle objets d’ASP
L’objet Server : représente le serveur et permet d’instancier et d’utiliser des composants COM(standards ou personnalisés) dans une page ASP.
L’objet ASPError : Il prend en charge la gestion des erreur en renvoyant le maximum de renseignements sur les exceptions. C’est une nouveauté d’ASP 3.0.
oct.-2000DESS IIDEE © B. BAH
7
Rappel
L’interface d’un objet ASP
Objet ASPObjet ASP
- Collections- Propriétés- Méthodes
oct.-2000DESS IIDEE © B. BAH
8
Rappel
L’interface d’un objet ASP
Les collections : Servent à stocker des informations en provenance ou à destination du client. C’est une sorte de tableau à deux colonne: la première stockant le nom d’un contrôle par exemple et la seconde sa valeur.
Les propriétés : permettent d’obtenir ou de stocker des valeurs spécifiques.
L’objet méthodes : ce sont les procédures et fonctions qui permettent d’accomplir des actions spécifiques.
oct.-2000DESS IIDEE © B. BAH
9
L’objet Request
Les collections de l’objet Request La collection Form récupère les données issues d'un
formulaire utilisant la méthode POST. Cette collection Contient donc les noms et valeurs des contrôles (zones de saisie, listes de choix, boutons etc.) situés à l'intérieur des balises <Form> et </Form> d'un formulaire.Syntaxes : <% StrNom=Request.Form("NOM") %>
<% = Request.Form("NOM") %>
oct.-2000DESS IIDEE © B. BAH
10
L’objet Request
Les collections de l’objet Request La collection QueryString, elle, récupère les
données issues soit d'un formulaire utilisant la méthode GET ou d’une chaîne de requête de type : http://b-bah/site/forums/ShowMessage.asp?IDMsg=40&IDGrp=3&IDMbre=3
Syntaxes : <% StrNom=Request.QueryString("NOM") %>
<% = Request.QueryString("NOM") %>
oct.-2000DESS IIDEE © B. BAH
11
L’objet Request
Les collections de l’objet Request La collection Cookies permet de vérifier la présence
d'un cookie de votre site sur le disque dur d'un client (sous forme d'un fichier) et d'en récupérer les Valeurs.
Syntaxes : <% Variable = Request.Cookies("NomCookie")%> <% Variable = Request.Cookies("NomCookie").("NomClé") %>
oct.-2000DESS IIDEE © B. BAH
12
L’objet Request
Les collections de l’objet Request La collection ServerVariables contient les en-têtes
HTTP de la requête. Il stocke des informations sur le navigateur, le serveur, l’application et l'utilisateur. L'accès à ces informations est facilité grâce à la syntaxe suivante :
<% Request.ServerVariables("nomEnTete") %>
oct.-2000DESS IIDEE © B. BAH
13
L’objet Response
Les collections de l’objet Response La collection Cookies de l'objet Response permet
de stocker des informations dans un fichier sous la forme nom/valeur sur le disque dur d'un client.
Syntaxes à utiliser : Lorsqu'on veut placer un cookie simple c'est à dire
qui contient une seule paire nom/valeur :
Response.Cookies("NomCookie")
oct.-2000DESS IIDEE © B. BAH
14
L’objet Response
Les collections de l’objet Response Lorsqu'on veut placer un cookie à valeurs multiples
c'est à dire possédant un seul nom mais plusieurs Clés:
Exemple:<%Response.Cookies("Utilisateur")("Nom")="nom"
Response.Cookies("Utilisateur")("Prenom")="Prenom" Response.Cookies("Utilisateur")("Adresse")="Adresse" Response.Cookies("Utilisateur")(" Email ")="Email"
Response.Cookies("Utilisateur").Expires= Date+365 %>
oct.-2000DESS IIDEE © B. BAH
15
L’objet Response
Les propriétés de l’objet Response La propriété Buffer est un tampon dans lequel le
serveur peut placer les pages HTML générées dynamiquement. L'hôte de script y ajoute les lignes de code HTML au fur et à mesure qu'il les génère. La page HTML n'est envoyé au client que lorsqu'elle aura été complètement construite.
A appeler juste après la directives :<% @LANGUAGE="VBSCRIPT" %>
<% Response.Buffer=False (ou True) %>
oct.-2000DESS IIDEE © B. BAH
16
L’objet Response
Les méthodes de l’objet Response La méthode Redirect de l'objet Response permet
de rediriger le navigateur vers une autre page. Syntaxe à utiliser :
Response.Redirect ("NewUser.asp")
La méthode Write de l'objet Response permet d'envoyer au navigateur une chaîne de caractère comme le montre la syntaxe suivante : Response.Write ("La promo <B> 20002001</B> du <I> IIDEE. </I>")
oct.-2000DESS IIDEE © B. BAH
17
L’objet Response
Les méthodes de l’objet Response Les méthodes Clear, End et Flush sont utilisées
lorsque la propriété Buffer a la valeur True. Response.Clear : efface tout code HTML mis en
cache. Response.End : oblige le serveur à mettre fin au
traitement d’un script et à renvoyer au client le contenu du tampon.
Response.Flush : Sert à renvoyer progressivement le contenu de la mémoire tampon au navigateur.
oct.-2000DESS IIDEE © B. BAH
18
Les objets Application et session
oct.-2000DESS IIDEE © B. BAH
19
Les objets Application et session
Les collections de l’objet Application La collection Contents de l'objet Application
contient tous instances des objets créées et ajoutées à l'application grâce à la commande Server.CreateObject().
Syntaxe:Valeur=Application.Contents("VarGlobale")
Ou
Valeur=Application ("VarGlobale")
(contents est , en effet, la collection par défaut)
oct.-2000DESS IIDEE © B. BAH
20
Les objets Application et session
Les collections de l’objet Application La collection StaticObjects de l'objet Application
contient elle, les instances des objets créées avec la balise HTML <OBJECT>.
Syntaxe:Valeur=Application.StaticObjects("VarGlobale")
oct.-2000DESS IIDEE © B. BAH
21
Les objets Application et session
Les méthodes de l’objet application Les méthodes Lock et UnLock de l'objet
Application Permettent respectivement de verrouiller et de déverrouiller les variables globales.
La méthode Lock empêche un utilisateur d'accéder à une variable d'application pendant qu'un autre est entrain de la modifier. Alors que UnLock déverrouille les variables pour permettre d'autres utilisateurs de les modifier. (Cf. au fichier global.asa).
oct.-2000DESS IIDEE © B. BAH
22
Les objets Application et session
Les collections de l’objet Session L'objet Session Présente les mêmes collections et
événements que l'objet Application. La seule différence entre les deux se situe au niveau de leurs portées.
Les méthodes de l’objet Session La méthode Abandon de l'objet Session Permet de
détruire les variables stockées dans cet objet et de libérer les ressources du serveur.
Syntaxe: Session.Abandon
oct.-2000DESS IIDEE © B. BAH
23
Les objets Application et session
Le fichier Global.asa Ce fichier doit être unique et placé dans le répertoire
racine du site. Il comporte quatre sous-routines qui permettent de traiter tout ce qui vient d'être dit à
propos des objets application et session.
oct.-2000DESS IIDEE © B. BAH
24
Les objets Application et session
Le fichier Global.asa<SCRIPT Language="VBScript" RUNAT="Server">
Sub Application_OnStart ' définir ici ce qui va se passer au démarre de l'application .
END SUB SUB Session_OnStart
' définir ici ce qui va se passer lorsqu'un nouvel utilisateur se connecte
' et démarre une nouvelle session .
END SUB SUB Session_OnEnd ' définir ici ce qui va se passer lorsqu'un utilisateur quitte le site.
END SUB SUB Application_OnEnd ' définir ici ce qui va se passer lorsqu'on arrête le serveur.
END SUB
</SCRIPT>
oct.-2000DESS IIDEE © B. BAH
25
Les objets Application et session
Fichier d’inclusion : Il est utilisé en général pour insérer dans informations communes partagées par toutes les pages asp (Les contantes ADO par exemple).
Syntaxe :
<!-- #Include file="adovbs.inc" -->
<!-- #Include file=" ../pages/SourceDonnees.asp" -->
oct.-2000DESS IIDEE © B. BAH
26
L’objet Server
Les méthodes de l’objet Server La méthode Server.CreateObject permet d'instancier
un composant serveur standard (comme ADO, AdRotator, Browser, Capabilities etc.).
Exemples de Syntaxe : <% set ObjConnexion=Server.CreateObject("ADODB.Connection") set ObjRecordset=Server.CreateObject("ADODB.Recordset") set ObjRotator=Server.CreateObject(“MSWC.AdRotator") set set ObjPerso=Server.CreateObject(MonObjet.MaClasse) ObjPerso.MaMethoode() %>
oct.-2000DESS IIDEE © B. BAH
27
L’objet Server
Les méthodes de l’objet Server La méthode Server.HTMLEncode permet de
formater une chaîne de caractère pour qu’elle puisse être affichée au format souhaité(caractères français accentués par exemple).
Exemples de Syntaxe : <%
TxtEncodé=Server.HTMLEncode(ChaîneAEncoder) %>
oct.-2000DESS IIDEE © B. BAH
28
L’Accès aux bases de
données
oct.-2000DESS IIDEE © B. BAH
29
L’accès aux données
OLEDB: une stratégie conçue pour offrir un accès universel à toutes les sources de données(relationnelles et non relationnelles).
La communication avec une source de données via OLEDB peut se faire par l'intermédiaire d'ADO(ActiveX Data Object) .
oct.-2000DESS IIDEE © B. BAH
30
L’accès aux données
oct.-2000DESS IIDEE © B. BAH
31
Le modèle objet ADO
ADO est composé de trois objets principaux comportant chacun une série de proprités: Connection, Command et Recordset.
La communication avec une source de données via OLEDB peut se faire par l'intermédiaire d'ADO(ActiveX Data Object) .
oct.-2000DESS IIDEE © B. BAH
32
L’objet Connection
Les propriétés de l’objet Connexion La propriété Errors permet de vérifier les erreurs
renvoyées par la source de données suite à une défaillance du fournisseur.
La propriété ConnectionString contient les informations nécessaire à l’établissement d’une connexion avant son ouverture.
oct.-2000DESS IIDEE © B. BAH
33
L’objet Connection
Les propriétés de l’objet Connexion La propriété CursorLocation pour appeler le
fournisseur du curseur côté client prenant en charge les mises à jour par lots.
Les méthodes de l’objet Connexion Les méthodes Open et Close permettent
respectivement d’ouvrir et de fermer la connexion physique à une source de données.
oct.-2000DESS IIDEE © B. BAH
34
L’objet Connection
Les méthodes de l’objet Connexion La méthode Execute permet d’exécuter une
commande SQL ou une procédure stockée sur la connexion. Elle peut renvoyer un jeu d’enregistrement.
Les méthodes BeginTrans, CommitTrans et RollbackTrans permettent de gérer les transactions sur la connexion ouverte.
oct.-2000DESS IIDEE © B. BAH
35
L’objet Command
Les méthodes de l’objet Command La méthode CreateParameter crée un objet
parameter.
La méthode Execute permet d’exécuter une instruction SQL, une requête une requête paramétrées ou une procédure stockée. Elle renvoie, en retour, un jeu d’enregistrement.
La méthode Cancel annule la méthode exécute ou open en cours.
oct.-2000DESS IIDEE © B. BAH
36
L’objet Command
Les Propriétés de l’objet Command La propriété ActiveConnection permet d’associer
l’objet Command à une connexion ouverte.
La propriété CommandText définit ou renvoie une valeur de type String contenant une commande pouvant être une instruction SQL, un nom de table, un nom de requête paramétrée ou l’appel d’une procédure stockée.
oct.-2000DESS IIDEE © B. BAH
37
L’objet Command
Les Propriétés de l’objet Command La propriété CommandType Indique le type de
commande correspondant à celui de la propriété CommandText.
La collection Parameters contient l’ensemble des objets Parameter d'un objet Command. La commande suivante permet d’ajouter un objet parameter à la collection parameters : Command.Parameters.Append (objParam)
oct.-2000DESS IIDEE © B. BAH
38
L’objet Parameter
Les Propriétés de l’objet Parameter La propriété Type de l’objet Parameter indique le
type de données d’un objet parameter.
La Propriété Direction de l’objet Parameter indique si ce dernier correspond à un paramètre d'entrée, un paramètre de sortie ou les deux, ou si le paramètre est la valeur de retour d'une procédure stockée.
La propriété Value de l’objet Parameter indique la valeur affectée à cet objet.
oct.-2000DESS IIDEE © B. BAH
39
L’objet Recordset
L’objet Recordset: représente le jeu d'enregistrements complet obtenu en ouvrant une table ou en exécutant une commande (instruction SQL ou procédure stockées). Il permet l'exploration et la manipulation de données.
Les méthodes de l’objet Recordset La méthode AddNeW, Close, Delete, MoveFirst,
MoveNext, MoveLast, Open, Update, UpdateBatch
oct.-2000DESS IIDEE © B. BAH
40
L’objet Recordset
Les propriété de l’objet Recordset ActiveConnection, EOF, Fields, Pagesize,
AbsolutePage.
oct.-2000DESS IIDEE © B. BAH
41
Connexion et manipulation des données
Chaînes de connexion pour Access Chaîne de connexion utilisant le pilote ODBC
pour Access connstring="DRIVER={Microsoft Access Driver
(*.mdb)};"&_ "DBQ=C:\chemin physique\Forum.mdb"
Chaîne de connexion utilisant le pilote OLEDB pour Access
connstring=" Provider=Microsoft Access.Jet.OLEDB.3.51; Data”& _ “dource=C:\ chemin physique\Forum.mdb"
oct.-2000DESS IIDEE © B. BAH
42
Connexion et manipulation des données
Chaînes de connexion SQL Server .
Chaîne de connexion utilisant le pilote ODBC pour SQL Server
connstring="driver={SQL Server}; server=nom_serveur;uid=login;" &_ " pwd=mot_de_passe; database=NomBase_de_données"
Chaîne de connexion utilisant le pilote OLEDB pour SQL Server
connstring=" Provider=SQLOLEDB; Data dource="&_ " NomMachine SQL Server; Initial Catalog= NomBase_de_données;"&_ "User ID=NomUtilisateur; Password= mot_de_passe"
oct.-2000DESS IIDEE © B. BAH
43
Connexion et manipulation des données
Chaînes de connexion Pour Oracle .
Chaîne de connexion utilisant le pilote ODBC pour Oracle
connstring = "driver={Microsoft ODBC for Oracle};" &_ "server=Nom_serveur;uid=login;pwd=mot_de_passe;"&_ "database=Nombase_de_données"
Chaîne de connexion utilisant le pilote OLEDB pour Oracle
' connstring = "Provider=MSDAORA; Data source=IntanceOracle" & _ "User ID=NomUtilisateur; Password= mot_de_passe"
oct.-2000DESS IIDEE © B. BAH
44
Connexion et manipulation des données Ouverture et fermeture d’une connexion.
AdoConnection.Open connstring‘traitements
ADOConnection.Close
Ouverture et fermeture d’une connexion.
ADORecordset.Open connstring‘traitementsADORecordset.Close
oct.-2000DESS IIDEE © B. BAH
45
Objet connection Set ADOConn = Server.CreateObject("ADODB.Connection") 'Création d'une instanceADOConn.Open StrConn 'Ouverture de la connectionSet ADORecodset = ADOConn.Execute(SQLQuery)
[Ou ADOConn.Execute(SQLQuery)] 'Exécution de la requête et retourne un objet Do While Not ADORecordset.EOF
‘traitements
Loop ‘Ferméture et destruction de l’objet ADORecordset.Close Set ADORecordset=Nothing ADOConn.close 'Fermeture et destruction de la connexion Set ADOConn =Nothing
oct.-2000DESS IIDEE © B. BAH
46
Objet Recordset Set ADOConn = Server.CreateObject("ADODB.Connection") 'Création d'une instanceADOConn.Open StrConn 'Ouverture de la connectionSet ADORecodset = Server.CreateObject("ADODB.Recordset") ADORecodset.open " SELECT * From table", ADOConn 'Exécution de la requête et retourne un objet Do While Not ADORecordset.EOF
‘traitements
Loop ‘Ferméture et destruction de l’objet ADORecordset.Close Set ADORecordset=Nothing ADOConn.close 'Fermeture et destruction de la connexion Set ADOConn =Nothing
oct.-2000DESS IIDEE © B. BAH
47
Objet command Set cmdQuery = Server.CreateObject("ADODB.Command")
cmdQuery.ActiveConnection =ADOConn
cmdQuery.CommandText = "NomRequete«
[Ou cmdQuery.CommandText = “SELECT * FROM NomTable “ ]
set parametre = server.CreateObject("ADODB.Parameter")
Set parametre = cmdQuery.CreateParameter("ParamIDMembre")
parametre.Type = adInteger
parametre.Direction = adParamInput
parametre.Value = Request.Cookies(" Valeur ")
cmdQuery.Parameters.Append parametre
Set ADORecordset = cmdQuery.Execute
oct.-2000DESS IIDEE © B. BAH
48
Objet command Do While Not ADORecordset.EOF
‘traitements
Loop
Ferméture et destruction de l’objet
ADORecordset.Close
Set ADORecordset=Nothing
oct.-2000DESS IIDEE © B. BAH
49
Objet connection 'Crée et ouvre un objet Connection
Set ADOConnection = Server.CreateObject("ADODB.Connection")
ADOConnection.Open StrConn 'Crée et ouvre un objet Recordset Set
ADORset = Server.CreateObject("ADODB.Recordset")
ADORset.ActiveConnection = ADOConnection
ADORset.CursorType = adOpenKeyset
ADORset.LockType = adLockOptimistic
ADORset.Source = "NomTable"
ADORset.Open
oct.-2000DESS IIDEE © B. BAH
50
Objet connection
ADORset.AddNew
ADORset ("Nom") = Request.Form ("Nom")
ADORset(" Prenom") = Request.Form (" Prenom")
ADORset(" Adresse") = Request.Form (" Adresse")
ADORset(" Téléphone") = Request.Form("PhoneNumber")
ADORset(" Ville") = Request.Form("Ville")
ADORset("Departement") = Request.Form ("Department")
ADORset.Update
ADORset.MoveFirst
ADORset.Close
ADOConnection.close
oct.-2000DESS IIDEE © B. BAH
51
L’objet Response
La manipulation des données Établire une connexion à une source de données Création d’une chaîne de commande SQL. Exécuter la commande. Si la commande renvoie des lignes, les tocker dans
un objet Recordset. L’objet Recordset permet l’ajout, la mise à jour,
modification, suppression.
oct.-2000DESS IIDEE © B. BAH
52
L’objet Response
La manipulation des données Établire une connexion à une source de données Création d’une chaîne de commande SQL. Exécuter la commande. Si la commande renvoie des lignes, les tocker dans
un objet Recordset. L’objet Recordset permet l’ajout, la mise à jour,
modification, suppression.
top related