Académique Documents
Professionnel Documents
Culture Documents
Concepts du Web
Techniques de Connexion
Web et Bases de Données Protocle HTTP
Messagerie
Concepts de Web
Transfert de fichiers (FTP)
Internet, Web, HTML Forum de nouvelles (news), de discussion (chat)
HTTP
Principes du Web
Hypertexte : HTML
Client/serveur : HTTP
© Sadok Ben Yahia Fac Sces Tunis 3 © Sadok Ben Yahia Fac Sces Tunis 4
1
Hypertexte Client/serveur
Texte "normal "
Client : le navigateur (Internet Explorer, Netscape, ...)
organisation linéaire
Serveur : le serveur Web (Apache, Microsoft IIS, ...)
éventuellement renvois sous forme de sommaires, index, notes de bas de Le client émet une requête
page
requête
Hypertexte
Client HTTP
Serveur Web
Schéma de désignation : Uniform Resource Locator (URL) Compléments sur les URL’s
Eléments constitutifs (optionnels) d'une URL
Permet de désigner une page Web protocole:// protocoles utilisables : HTTP, FTP, MAILTO, FILE, NEWS
Chaque page a un nom unique Ö pas d'ambiguïté possible utilisateur@ login pour les pages protégées
Protocole : // serveur / page serveur nom ou adresse IP (ex. : 163.136.27.6 ) du serveur
Organisation hiérarchique possible pour les pages (=hiérarchie fichier #signet signet dans le document à atteindre
disque) ?options information transmise au serveur (ex. : formulaire)
2
Structure d'un document HTML HTML : Règles de balisage
Déclaration version HTML utilisée
<! DOCTYPE ….> Deux types de balises :
En-tête <HtML>
<HEAD> autonome < .. > (ex. : <DOCTYPE >)
Corps du document En-tête
délimitant une zone
</HEAD>
<BODY> balise de début de zone < ... > (ex. : <HTML> )
Corps du document
</BODY>
balise de fin de zone </… > (ex. : </HTML> )
</HTML>
© Sadok Ben Yahia Fac Sces Tunis 9 © Sadok Ben Yahia Fac Sces Tunis 10
© Sadok Ben Yahia Fac Sces Tunis 11 © Sadok Ben Yahia Fac Sces Tunis 12
3
Le protocole HTTP Déroulement d’une requête HTTP
client serveur
Définit le langage utilisé pour les échanges entre client et on
se
HTTP
démon
serveur Web rép
HTTPD
version 0.9
9 simple protocole de transfert de données (GET et réponse) Demande de connexion
version 1.0
9 restée un Internet Draft (RFC 1945)
Attente de la réponse du serveur
actuellement version 1.1 Établissement de la connexion
9 RFC 2616 (juin 1999)
Envoi d’une requête (URL)
Pas de session permanente entre client/serveur Réponse du serveur
Affichage de la réponse
Fermeture de la connexion
© Sadok Ben Yahia Fac Sces Tunis 13 © Sadok Ben Yahia Fac Sces Tunis 14
se
protocole
on
démon
rép
sans état HTTPD
Demande de connexion
Attente de la réponse du serveur
Établissement de la connexion
Envoi d’une requête (URL)
Réponse du serveur
Affichage de la réponse
Fermeture de la connexion
© Sadok Ben Yahia Fac Sces Tunis 15 © Sadok Ben Yahia Fac Sces Tunis 16
4
Exemple de transaction HTTP Exemple de transaction HTTP
% telnet www.info.univ-tunis1.tn 80 . . . . . . . . . . . . . . . . . . . . . .connexion au serveur web % telnet www.info.univ-tunis1.tn 80 . . . . . . . . . . . . . . . . . . . . . .connexion au serveur web
Trying 148.60.4.30... Trying 148.60.4.30...
Connected to apollon.univ-tunis1.tn. Connected to apollon.univ-tunis1.tn
Escape character is '^]'. Escape character is '^]'.
GET /index.html HTTP/1.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . demande de transfert
Host: apollon.univ-tunis1.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . nom du serveur
From: pa@ifsic.univ-tunis1.tn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . adresse demandeur (optionnelle)
© Sadok Ben Yahia Fac Sces Tunis 17 © Sadok Ben Yahia Fac Sces Tunis 18
© Sadok Ben Yahia Fac Sces Tunis 19 © Sadok Ben Yahia Fac Sces Tunis 20
5
Requête HTTP Requête HTTP (2)
Permet d'envoyer des commandes au serveur Web
3 commandes principales (présentes dans HTTP/1.0 et 1.1) Pour les commandes POST, informations supplémentaires nécessaires
Format de la requête (plusieurs lignes)
GET : demande d'un document
HEAD : demande de l'en-tête (HTTP) d'un document
POST : dépose d'information sur le serveur commande URL version HTTP comprise par le client
ligne blanche
GET : requête principale, 80 % des requêtes Web Informations envoyées par le client
HEAD : au travers de l'en-tête, permet de savoir si un document a changé
POST : envoi de d'information saisie dans un formulaire client
<HTML> document
....
</HTML> Nombreux autres en-têtes possibles
© Sadok Ben Yahia Fac Sces Tunis 23 © Sadok Ben Yahia Fac Sces Tunis 24
6
Réponse HTTP (3) Les codes de réponse sous HTTP
Italique[Italic] <I>...</I>
<EM>...</EM> Début et fin de zone en italique
© Sadok Ben Yahia Fac Sces Tunis 27 © Sadok Ben Yahia Fac Sces Tunis 28
7
Les titres Les titres
© Sadok Ben Yahia Fac Sces Tunis 29 © Sadok Ben Yahia Fac Sces Tunis 30
Alignement align=top
align=middle
align=botton
align=left
align=right
© Sadok Ben Yahia Fac Sces Tunis 31 © Sadok Ben Yahia Fac Sces Tunis 32
8
Les images … Les tableaux
L'attribut align positionne l'image par rapport au texte : [Table] <TABLE></TABLE>Début et fin de tableau
<IMG SRC="HELP.gif" align=TOP>Fichier d'aide Définition d'une ligne[Table Row] <TR></TR>Début et fin de ligne
<IMG SRC="HELP.gif" align=CENTER>Fichier d'aide Définition d'une cellule[Table Data] <TD></TD>Début et fin de cellule
<TABLE>
<TR><TD>1</TD><TD>2</TD></TR>
<TR><TD>3</TD><TD>4</TD></TR>
</TABLE>
© Sadok Ben Yahia Fac Sces Tunis 33 © Sadok Ben Yahia Fac Sces Tunis 34
© Sadok Ben Yahia Fac Sces Tunis 35 © Sadok Ben Yahia Fac Sces Tunis 36
9
Les tableaux … Les tableaux: Atelier
L'enrobage des cellules ou l'espace entre le bord et le contenu Je veux un tableau centré qui occupe 60% de la fenêtre avec sur une ligne, trois
<TABLE cellpadding=?> colonnes égales
Je veux ce tableau
© Sadok Ben Yahia Fac Sces Tunis 37 © Sadok Ben Yahia Fac Sces Tunis 38
boutons
Tester cette instruction <TD colspan=3 align=center bgcolor="#0000FF">
© Sadok Ben Yahia Fac Sces Tunis 39 © Sadok Ben Yahia Fac Sces Tunis 40
10
Formulaires : Balises Exemple de formulaire HTML
Déclaration d'un formulaire <FORM … /FORM> < FORM ACTION="http://monserveur.com/cgi-bin/prog.exe" METHOD=POST>
Nom
<INPUT NAME="client" SIZE=46>
Attributs principaux ( <FORM ACTION=… METHOD=… Rue
<INPUT NAME="rue" SIZE=40>
NAME=…> Ville
<INPUT NAME="ville" SIZE=20>
Code postal
ACTION :URL vers laquelle envoyer les données saisies <INPUT NAME="cp" SIZE=5>
Carte de crédit No
METHOD: commande HTTP à utiliser pour effectuer l'envoi <INPUT NAME="carte" SIZE=10>
Expire
⇒POST <INPUT NAME="expire" TYPE=TEXT SIZE=4>
M/C
NAME : nom du formulaire <INPUT NAME="cc" TYPE=RADIO VALUE="mc" CHECKED>
VISA
<INPUT NAME="cc" TYPE=RADIO VALUE="vis">
TARGET : nom de la frame dans laquelle le résultat doit Contre remboursement
<INPUT NAME="cr" TYPE=CHECKBOX>
être affiché <INPUT TYPE=SUBMIT VALUE="Envoi">
<INPUT TYPE=RESET VALUE="Remise à zéro">
</FORM>
© Sadok Ben Yahia Fac Sces Tunis 41 © Sadok Ben Yahia Fac Sces Tunis 42
Formulaires : Balises
Exemple de formulaire HTML
Déclaration d'un formulaire <FORM … /FORM>
des formulaires peuvent être insérés à l'intérieur d'un autre formulaire web
© Sadok Ben Yahia Fac Sces Tunis 43 © Sadok Ben Yahia Fac Sces Tunis 44
11
Les formulaires : Balise INPUT Formulaire: Envoi des données au serveur
Déclaration des champs de saisie (exclusivement entre <FORM … /FORM>) Lorsque l'utilisateur appuie sur le bouton SUBMIT, le navigateur :
construit une chaîne de caractères contenant toutes les données du formulaire
NAME : nom du champ de saisie (unique à l'intérieur d'un formulaire)
TYPE : type du champ de saisie
envoie cette chaîne au serveur
Cette chaîne :
Types possibles ( TYPE=... ) ensemble de couples séparées par le caractère &
chaque couple est de la forme nom de champ = valeur saisie
TEXT : zone de saisie texte (type par défaut en cas d'omission de TYPE) les espaces sont remplacés par le caractère +
SIZE : taille de la zone
RADIO : bouton radio tous les boutons ayant même nom (NAME) ∈ au même Exemple (1 seule ligne)
groupe dans ce cas, les attributs (VALUE) permettent de les différencier client=XXY+AZERTY&rue=5410+rue+Gambetta&ville=Quebec&
CHECKBOX : boîte à cocher cp=G1S3E5&carte=0123456789&cc=visa&cr=on
© Sadok Ben Yahia Fac Sces Tunis 45 © Sadok Ben Yahia Fac Sces Tunis 46
Autres types possibles pour la balise INPUT Autres types possibles pour la balise
<FORM ACTION=prog.exe" METHOD="POST">
Mot de passe <INPUT TYPE= PASSWORD NAME=" passe" SIZE= 16> <P>
HIDDEN : champ caché TEXTAREA : zone
Sélectionner un fichier <INPUT TYPE= FILE NAME=" fichier"> <P> transmission de saisie d'un texte
d'informations "furtives" sur plusieurs
<INPUT TYPE= SUBMIT VALUE="Envoi"> FILE : sélection lignes
dans une chaîne de
d'un fichier à formulaires
<INPUT TYPE= RESET VALUE=" Remise à zéro"> <P> envoyer
</FORM>
© Sadok Ben Yahia Fac Sces Tunis 47 © Sadok Ben Yahia Fac Sces Tunis 48
12
Autres types possibles pour la balise Les CSS: pourquoi
<FORM> Objectif: fournir un mécanisme pour associer différents styles
Champ caché <INPUT TYPE= HIDDEN NAME="cache" VALUE="toto"> <P> à un même document
<INPUT TYPE= BUTTON VALUE=" Cliquez" onClick=" fonctionJavaScript()" >
TEXTAREA NAME=" zone" ROWS= 3 COLS= 40> texte initial< /TEXTAREA >
<P>
<SELECT NAME=" musicTypes">
<OPTION > R&B Article
<OPTION > Jazz
<OPTION > Blues
Présentations
<OPTION > New Age
<INPUT TYPE= SUBMIT VALUE=" Envoi">
<INPUT TYPE= RESET
VALUE=" Remise à zéro"> <P>
</FORM> Contenu
...
© Sadok Ben Yahia Fac Sces Tunis 49 © Sadok Ben Yahia Fac Sces Tunis 50
© Sadok Ben Yahia Fac Sces Tunis 51 © Sadok Ben Yahia Fac Sces Tunis 52
13
Définitions
Données : faits qui peuvent être enregistrés et qui ont une signification
implicite
entreprise
Introduction aux bases de données Base de Données (BD) : Un ensemble logiquement cohérent de
données. Conçu et construit à partir de données pour un besoin
spécifique.
produits, etc.
© Sadok Ben Yahia Fac Sces Tunis 53 © Sadok Ben Yahia Fac Sces Tunis 54
Etudiant Etudiant
Niveaux de représentation d’une BD Relationnelle
Nom Nom
Prénom Prénom
Schéma interne : Description des données en termes de ddn ddn
login login
représentation physique en machine Date d ’entrée Date d ’entrée
ID ID
Gestion des
Schéma conceptuel : Description des données indépendamment de inscriptions
Insc_examen
la manipulation qui en sera faite Ex: Personne(nom, prénom, ddn, ID, Gestion Intitulé (Cours) Suit
des examens ID (Etudiant)
Salaire,…)
Cours
Schéma externe : Description externe d’une partie de la BD Gestion
Etudiant
des comptes Intitulé
Nom
correspondant à une vision particulière d ’un utilisateur ou d ’une informatiques Prénom
Enseignant
Assistant
login
application
Application Niveau logique Niveau Conceptuel
© Sadok Ben Yahia Fac Sces Tunis 55 © Sadok Ben Yahia Fac Sces Tunis 56
14
Système de fichiers vs Bases de Données Définition SGBD
Applications Données
Ensemble de programmes qui permettent de
Gestion des Gestion des
inscriptions inscriptions
Gestion Gestion
Définir une BD : structure de données, schéma conceptuel
des examens des examens SGBD
© Sadok Ben Yahia Fac Sces Tunis 57 © Sadok Ben Yahia Fac Sces Tunis 58
Recherche des données Changer les structures internes sans remettre en cause les entités et
Transformation des données Possibilité d ’opérer des améliorations de bas niveau sans affecter le
© Sadok Ben Yahia Fac Sces Tunis 59 © Sadok Ben Yahia Fac Sces Tunis 60
15
Objectifs d’un SGBD Objectifs d’un SGBD
Indépendance entre la manière dont les données sont représentées Atomique (tout ou rien)
© Sadok Ben Yahia Fac Sces Tunis 61 © Sadok Ben Yahia Fac Sces Tunis 62
© Sadok Ben Yahia Fac Sces Tunis 63 © Sadok Ben Yahia Fac Sces Tunis 64
16
Architecture 2-tiers Architectures de Bases de Données
Caractéristiques :
La fonction de présentation est à la charge du client exclusivement.
Affichage et saisie des données
Le calcul (processing) est réparti entre le client et le serveur
Le logiciel client est généralement spécifique au serveur Client
Connexion, exécution de requêtes, Application
Les données sont stockées ou accessibles via le serveur traitement des résultats
API de La BD
Le serveur est polyvalent (capable de fournir directement
Connexion aux sources de
l'ensemble des ressources demandées par le client) données, lecture et écriture du
protocole de données
SGBD
Le client assume des tâches de : Exécution des commandes pour Serveur
le client est dit "lourd " l’accès aux données
présentation
processing,
Communication avec le serveur
© Sadok Ben Yahia Fac Sces Tunis 65 © Sadok Ben Yahia Fac Sces Tunis 66
Composants d’un Système de Bases de données Composants d’un Système de Bases de données
Serveur
Application : Ensemble de programmes qui permettent :
d ’interagir avec l ’utilisateur via une interface graphique Le logiciel qui exécute les commandes pour accéder aux données.
Il comprend d ’autres composants fournissant des services de
d’envoyer des requêtes aux bases de données et de traiter les
réponses gestion des données (sécurité, transactions, reprise après panne,
Ex: gestion des ressources humaines, gestion de stocks, tableurs, etc. etc.)
© Sadok Ben Yahia Fac Sces Tunis 67 © Sadok Ben Yahia Fac Sces Tunis 68
17
Intégration Web et Bases de Données Intégration Web et Bases de Données
?
Internet www.tnw.tn
Comment ? Production
Accès Distribution
© Sadok Ben Yahia Fac Sces Tunis 69 © Sadok Ben Yahia Fac Sces Tunis 70
18
Exemple : Le site de SNCFT Pourquoi une intégration Web/BD ?
(Distribution)
Gestion des
horaires
Faibles coûts de déploiement
Gestion
www.sncft.tn des
réservations Les utilisateurs n’ont pas besoin d’accéder directement
aux applications de la BD. Un Browser suffit
Statistiques
des
ventes Gestion de versions des applications
Pas de mise à jour du côté client
Informations
Distribution universelle
© Sadok Ben Yahia Fac Sces Tunis 73 © Sadok Ben Yahia Fac Sces Tunis 74
© Sadok Ben Yahia Fac Sces Tunis 75 © Sadok Ben Yahia Fac Sces Tunis 76
19
Une nouvelle génération d ’applications Web/BD Architectures 3 tiers
Le Web: un moyen de capture du comportement, des goûts et des opinions des
utilisateurs
© Sadok Ben Yahia Fac Sces Tunis 79 © Sadok Ben Yahia Fac Sces Tunis 80
20
Architecture 3-tiers (2) Une nouvelle génération d ’applications Web/BD
© Sadok Ben Yahia Fac Sces Tunis 81 © Sadok Ben Yahia Fac Sces Tunis 82
1er tronçon
Web Statique
Url
21
Types d ’interfaces Web / BD: CGI Types d ’interfaces Web / BD: CGI
CGI ( Common Gateway Interface)
Un ensemble de règles par lesquels un serveur Web:
Url
Navigateur HTTP
Serveur Web CGI
Système passe les requêtes des utilisateurs à un programme externe
de fichiers
Fichier HTML
récupère les données pour les renvoyer à l ’utilisateur
Base
de
Données
fait partie du protocole HTTP
Un standard pour l’interface entre applications et serveurs d’informations Le nom de l’application, les paramètres et leurs valeurs font
partie du message HTTP ou de l ’URL
But du CGI : faire communiquer le serveur avec des programmes externes.
Le serveur trouve et exécute un programme et retourne le résultat au navigateur
Ex: http://www.monsite.tn/agenda?nom=Slama¶m2=Mounir
© Sadok Ben Yahia Fac Sces Tunis 85 © Sadok Ben Yahia Fac Sces Tunis 86
SERVER_SOFTWARE Nom du logiciel serveur Web SCRIPT_NAME Nom du programme CGI lancé
SERVER_NAME Nom DNS de la machine hébergeant le serveur QUERY_STRING Si method=GET, contient la chaîne CGI, sinon vide
Web
CONTENT_LENGTH Si method=POST, contient la longeur de la chaîne
GATEWAY_INTERFACE Version du protocole CGI utilisée par le serveur CGI, sinon 0
SERVER_PROTOCOL Version du protocole HTTP utilisée par le serveur REMOTE_HOST Nom DNS de la machine distante qui a soumis le
formulaire
SERVER_PORT Port utilisé par le serveur Web
REMOTE_ADDR Adresse IP de cette machine distante
REQUEST_METHOD Méthode (GET ou POST) selon laquelle le
formulaire a été soumis
© Sadok Ben Yahia Fac Sces Tunis 87 © Sadok Ben Yahia Fac Sces Tunis 88
22
CGI (Exemples)
Commandes Batch Delphi
if getvar('REQUEST_METHOD')='POST' then
ECHO OFF
begin
ECHO content-type: text/html parmstring:=getvar('CONTENT_LENGTH');
if parmstring<>'' then begin
ECHO.
size:=strtoint(parmstring);
ECHO setlength(parmstring,size);
^<HTML^>^<HEAD^>^<TITLE^>^</TITLE^>^</HEAD^>^<BODY for i:=1 to size do read(parmstring[i]);
end;
^> end
ECHO REQUEST_METHOD=%REQUEST_METHOD% else
parmstring:=getvar('QUERY_STRING');
ECHO ^</BODY^>^</HTML^>
© Sadok Ben Yahia Fac Sces Tunis 89 © Sadok Ben Yahia Fac Sces Tunis 90
conséquences sur d ’autres processus Transfert des données + Transfert de la présentation des
données (HTML).
© Sadok Ben Yahia Fac Sces Tunis 91 © Sadok Ben Yahia Fac Sces Tunis 92
23
Types d ’interfaces Web / BD : Schéma Server Side Include
Canevas de fichiers HTML
1 2
Les server-side-includes Ex ASP, Le client émet une requête http
Coldfusion Le serveur contrôle
http://www.fst.tn/recherche.cgi
Url les droits d'accès
Navigateur HTTP
Serveur Web
Ossature de Poste client
Fichier HTML fichiers Client Web 5 Serveur Web Machine Serveur
HTML 6
Le client affiche le le fichier html 3
document et interagit est renvoyé au Le serveur
avec l'utilisateur client recherche le fichier
Base
Base 4 shtml
de
de
Données Le fichier est
Données
ré-analysé par le
serveur
.shtml
© Sadok Ben Yahia Fac Sces Tunis 93 © Sadok Ben Yahia Fac Sces Tunis 94
SSI SSI
© Sadok Ben Yahia Fac Sces Tunis 95 © Sadok Ben Yahia Fac Sces Tunis 96
24
Cold Fusion Exemple : Cold Fusion
<HTML>
HTML, HTTP Server SQL
Server Web
HTML, Applicatif Cold ODBC <CFQUERY NAME="Resultats" DATASOURCE="FST">
ISAPI, Fusion Résultats
Requête
NSAPI,
CGI
SELECT NOM_LABORATOIRE from laboratoires
</CFQUERY>
HTML, CFML <CFTABLE QUERY="Resultats">
<CFCOLS WIDTH="30" TEXT="<LI>
#NOM_LABORATOIRE">
</CFTABLE>
…
© Sadok Ben Yahia Fac Sces Tunis 97 © Sadok Ben Yahia Fac Sces Tunis 98
Base
Base Apps CGI
de
de Internet DataBase Filtres, etc...
Données Microsoft dbWeb DLL OLEISAPI
Données Connector (IDC)
Autres
L'accès API : à utiliser une API existante entre le serveur HTTP Microsoft Index
Pilote ODBC
fonctions
et le base de données. Server
25
Approche IDC/HTX Exemple 1: IDC/HTX
demo.idc
demo.idc
DataSource: FST_Lab
Serveur listeLabo.htx
listeLabo.htx
SQL UserName : wwwapp
IDC ODBC
Password : ?????
URL du modèle
Requête et variables
Résultats
<html><body>
Template : listeLabo.htx
Modèle
HTX
<%BeginDetail%>
HTML
SQLStatement :
Les noms des labos sont:
+SELECT * from laboratoires
Réponse <%NOM_DU_LABORATOIRE%><BR>
<%EndDetail%>
</body>
© Sadok Ben Yahia Fac Sces Tunis 101 © Sadok Ben Yahia Fac Sces Tunis 102
© Sadok Ben Yahia Fac Sces Tunis 103 © Sadok Ben Yahia Fac Sces Tunis 104
26
OLEISAPI Exemple
Réponse
http://serveurNT/utilisat/OLEISAPI.dll/toto.ReturnBonjour
© Sadok Ben Yahia Fac Sces Tunis 105 © Sadok Ben Yahia Fac Sces Tunis 106
Types d ’interfaces Web / BD : L’Accès API Types d ’interfaces Web / BD : L’Accès API
une application CGI est chargée à chaque fois qu’elle Cet accès est très à la mode mais plus que douteux en terme
est référencée par le client (Une copie séparée est
lancée à chaque fois) de portabilité des applications, d'une part par rapport aux
Une seule application peut gérer plusieurs requêtes
provenant de plusieurs navigateurs à la fois. Si une serveurs HTTP mais également par rapport aux bases de
requête est envoyée depuis le navigateur, Il y a de
fortes chances que la DLL soit déjà chargée. données.
Ces API permettent de s'affranchir de codages de
programmes en incluant dans les pages HTML les codes
d'accès aux bases de données
© Sadok Ben Yahia Fac Sces Tunis 107 © Sadok Ben Yahia Fac Sces Tunis 108
27
Types d ’interfaces Web / BD Types d ’interfaces Web / BD
Serveur Web fortement lié au serveur de bases de données
Applications Web développées de la même
Url manière que les applications Bases de
Serveur
Navigateur HTTP
Serveur Données
Web BD
Base
Base
Fichier HTML
de
de Convient à la publication de bases de
Données
Données données Oracle existantes
Utilitaires
Oracle Web Server PL SQL
Oracle
Navigateur HTTP Web Listener OWA Oracle 7
Fichier HTML
OWA
Portabilité: applications développées en langage
Système
Système Base
Base propriétaire (PL/SQL)
de
de de
de
fichiers
fichiers Données
Données
© Sadok Ben Yahia Fac Sces Tunis 109 © Sadok Ben Yahia Fac Sces Tunis 110
© Sadok Ben Yahia Fac Sces Tunis 111 © Sadok Ben Yahia Fac Sces Tunis 112
28
OWS Exemple 1 OWS Exemple 1
<html>
<body>
<form METHOD="POST"
create or replace
ACTION="http://lisiaix0/owa/afftab>
procedure afftab(nom_table in
Nom de la table varchar2)
<INPUT NAME="nom_table"
is
TYPE="TEXT">
x boolean;
<INPUT TYPE="SUBMIT" VALUE="Afficher">
</form> begin
</body> x:=owa_util.tableprint(nom_table
, 'BORDER');
</html>
end;
© Sadok Ben Yahia Fac Sces Tunis 113 © Sadok Ben Yahia Fac Sces Tunis 114
OWS Exemple 2
create or replace procedure listtables is
cursor c_tables is
select table_name from user_tables;
begin
htp.htmlopen;
htp.headopen;
htp.htitle('Liste des tables');
htp.headclose;
htp.bodyclose;
for enreg in c_tables loop
htp.print (enreg.table_name);
htp.br;
end loop
htp.bodyclose;
htp.htmlclose;
end;
/
29