Exam PHP
Exam PHP
Exam PHP
1) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens?
LINK
VLINK
ALINK
TEXT
2) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens déjà visités?
LINK
ALINK
TEXT
VLINK
3) Que veut dire le mot HTML?
Home Tool Markup Language
Hyperlinks and Text Markup Language
Hyper Text Markup Language
Hyper Text machine Language
4) Quelle balise te permettra d'insérer correctement une image de fond dans ta page
HTML?
<BODY BACKGROUND="image.gif">
<IMG SRC="image.gif" BACKGROUND>
<BACKGROUND IMG="image.gif">
<IMG SRC="image.gif" TYPE="background">
5) Dans quel ordre devez-vous placer correctement les balises dans une page
HTML?
<HTML><TITLE><TITLE><BODY></BODY></HTML>
<HTML><TITLE></TITLE><BODY></BODY></HTML>
<HTML><TITLE></TITLE><BODY></HTML>
<HTML><HEAD></TITLE><BODY></BODY></HTML>
6) Quel attribut de la balise <BODY..> établit la couleur de fond d'une page web?
BACKGROUND
BACKCOLOR
BGCOLOR
BCOLOR
7) Parmi les choix suivants, lequel n'est pas un attribut de la balise <BODY>?
BACKGROUND
BGCOLOR
TEXT
FONT
8) Une paire de balises HTML doit être utilisé dans vos pages web, une au début et
l'autre sur la dernière ligne. De quelle paire s'agit-il?
<HTML> et </HTML>
<BODY> et </BODY>
<HEAD> et </HEAD>
<TITLE> et </TITLE>
9) La partie HEAD d'un fichier HTML contient. .
Toutes les balises d'un fichier HTML
Les balises du BODY
La balise TITLE
Aucune de ces réponses
10) Quand vous utilisez la balise <TITLE>, où est affiché le texte?
Le titre est placé au début de la page HTML.
Le titre est placé au début de chaque paragraphe.
Le titre est affiché dans le haut des navigateurs.
Toutes les réponses ci-dessus
11) Quelle est la balise encadrant les infomations qui ne seront pas éditées à l'écran:
<HTML> et </HTML>
<HEAD> et </HEAD>
<TITLE> et </TITLE>
<BODY> et </BODY>
12) La majorité des informations d'une page Web se trouve dans:
La balise HEAD
La balise TITLE
La balise BODY
La balise des commentaires <!-- ... -->
13) Indiquez une balise obligatoire pour fabriquer une page web?
<HTML>
<META>
<A>
<TABLE>
14) Si vous voulez utiliser une image comme fond d'écran, dans quelle balise devez-
vous l'inclure?
<BKG>
<HEAD>
<BODY>
<BACKGROUND>
15) Que signifie l'attribut BGCOLOR de la balise <BODY>?
Couleur du texte.
Couleur de l'arrière plan.
Couleur de la cellule.
Couleur des images.
16) Pour éviter que le fond de l'écran ne bouge avec le texte via la barre de
défilement, il faut utiliser ...
BGPROPERTIES = "nomove"
BGPROPERTIES = "stop"
BGPROPERTIES = "stick"
BGPROPERTIES = "fixed"
17) Un fichier HTML est:
Un document texte
Une présentation multimédia
Un logiciel
Une base de données relationnelle
18) Le HTML est une langage utilisé pour créer...
Des images
De l'audio
Des vidéos
Des pages web
19) Quand vous enregistrez vos pages HTML, quelle extension devez-vous utiliser?.
txt.
html
.web.
www
20) Quel organisme est responsable des standards du langage HTML?
The World Wide Web Consortium
Microsoft
Netscape
Intel
Réponses:
1–A 2–D 3–C 4–A 5–B 6–C 7–D 8–A 9–C 10 C
11 – B 12 – C 13 – A 14 – C 15 – B 16 – D 17 – A 18 – D 19 – B 20 - A
Réponses
21 – A 22– B 23 – C 24 – D 25 – B 26 – B 27 – C 28 – D 29 – B 30 – D
31 – D 32 – A 33 – A 34 – C 35 – D 36 – B 37 – C 38 – C 39 – D 40 - A
Réponses
41 – A 42 – D 43 – A 44 – B 45 – C 46 – A 47 – D 48 – A 49 – B 50 – C
51 – C 52 – A 53 – B 54 – D 55 – C 56 – A 57 – D 58 – B 59 – C 60 - B
Réponses
61 – C 62 – B 63 – D 64 – B 65 – C 66 – D 67 – D 68 – A 69 – C 70 – A
71 – D 72 – D 73 – A 74 – C 75 – A 76 – B 77 – C 78 – B 79 – A 80 - B
Réponses
101 – A 102 – A 103 – D 104 – C 105 – B 106 – C 107 – A 108 – A 109 – A 110 – B
111 – B 112 – C 113 – B 114 – D 115 – C 116 – B 117 – C 118 – D 119 – B 120 - A
Activités d’apprentissage
à distance pour assurer la
continuité des cours.
Corrigé QCM HTML
Niveau : 2ème A C
Semestre 2 : 2019-2020
Corrigé QCM
1) Dans quel ordre devez-vous placer correctement les balises dans une page HTML?
� <HTML><TITLE><TITLE><BODY></BODY></HTML>
� <HTML><TITLE></TITLE><BODY></BODY></HTML>
<HTML><HEAD><TITLE></TITLE></HEAD><BODY></BODY></HTML>
3) Quelle balise te permettra d'insérer correctement une image de fond dans ta page
HTML?
<BODY BACKGROUND="image.gif">
� <IMG SRC="image.gif" BACKGROUND>
� <BACKGROUND IMG="image.gif">
� <IMG SRC="image.gif" TYPE="background">
4) Quel attribut de la balise <BODY> établit la couleur de fond d'une page web?
� BACKGROUND
� BACKCOLOR
BGCOLOR
� BCOLOR
5) Une paire de balises HTML doit être utilisée dans vos pages web, une au début et l'autre sur la
dernière ligne. De quelle paire s'agit-il?
<HTML> et </HTML>
� <BODY> et </BODY>
� <HEAD> et </HEAD>
� <TITLE> et </TITLE>
-1-
Activités d’apprentissage
à distance pour assurer la
continuité des cours.
QCM HTML
Niveau : 2ème A C
Semestre 2 : 2019-2020
8) Quelle est la balise encadrant les informations qui ne seront pas éditées à l'écran:
<HEAD> et </HEAD>
� <TITLE> et </TITLE>
� <BODY> et </BODY>
10) Indiquez une balise obligatoire pour fabriquer une page web?
<HTML>
� <META>
� <TABLE>
11) Si vous voulez utiliser une image comme fond d'écran, dans quelle balise devez-vous l'inclure?
� <HEAD>
� <BODY>
<BACKGROUND>
14) Quand vous enregistrez vos pages HTML, quelle extension devez-vous utiliser?
� .txt
.htm
� .www
-2-
Création d’un QCM en HTML
Il est très difficile de réaliser un questionnaire de type QCM en HTML pur, en effet il est nécessaire de
vérifier les réponses ce qui implique la mise en oeuvre de scripts en langage de programmation intégré
au code HTML de la page.
Dans cet exemple, nous mettons en oeuvre le générateur écrit G Béraud du CARMI de l’Académie de
Grenoble.
L’installateur ne crée pas d’icône dans le menu Démarrer mais cela n’a pas beaucoup d’importance.
Examinons un exemple de QCM réalisé grâce à cet utilitaire: avec l’explorateur, ouvrez le dossier
d’installation. Vous y trouvez un certain nombre de fichiers:
1 Avec un éd iteur de texte (le bloc-notes est suffisant, surtout n’utilisez pas Word), on
écrit les questions.
2 On param ètre le générateur.
3 La page HTML est générée.
1 Création de l’exercice.
Nous disposons de pages web a vec les tables de multiplication et nous souhaitons proposer des QCM
destinés à aider les élèves à tester leurs connaissances. Nous avons donc besoin de générer des QCM
qui seront accessibles à partir de la page “somm aire_qcm.htm” situé dans un dossier “multiplication”.
Créons un QCM pour la table de multiplication par 6:
Ouvrez le bloc-n otes et tape z le texte suivant, les commen taires en italiques ne s ont pas à s aisir!
Inventez deu x au tres que stio ns p uis s auv ega rdez le fich ier da ns le dos sier QCM en le nommant mult6.txt
et fermez le bloc-notes.
On décide de ne pas
a f f i c h er les bonnes
réponses à la fin du QCM,
on ne spé cifie pas d ’image
de fond mais un fond uni
vert. On conserve la police
Aria l.
3 Génération de la page.
Cliquez Ok, une pag e HT ML est gén érée dan s le d oss ier. V ous pou vez la tes ter im méd iate men t en la
cliquant, la page s’ouvre dans une fenêtre de navigateur. Cette page peut-être reformatée dans un
éditeur HTML: changement des couleurs de police, du fond, intégration dans un jeu de cadre.
Il ne reste plus qu’à copier la page “mult6.htm ” dans le dossier contenant le site web et notamment celui
où se trouve la page “sommaire_qcm .htm”.
Le fichier “mult6.txt” n’est plus nécessaire, cependant, il est utile de le conserver afin de générer un
nouvel exercice identique.
1. Quelle organisation définit les standards Web?
A Apple Inc.
B IBM Corporation
C World Wide Web Consortium
D Microsoft Corporation
Réponse
C
Le World Wide Web Consortium (W3C) est une communauté internationale qui
développe des normes ouvertes pour assurer la croissance à long terme du Web.
D
Un document HTML peut contenir des attributs, des balises, et texte brut. Exemple :
2. Une page conçue en HTML s’appelle _____
A Application
B Page de garde
C Front-end
D Page Web
Réponse
D
Une page Web est un document généralement écrit en HTML (Hypertext Markup
Language) accessible via Internet ou d’autres réseaux à l’aide d’un navigateur Internet.
Une page Web est accessible en entrant une adresse URL et peut contenir du texte, des
graphiques et des hyperliens vers d’autres pages Web et fichiers. La page que vous lisez
actuellement est un exemple de page Web.
B
Exemple : maPage.html
4. Le document HTML contient une balise racine appelée
____
A HEAD
B Title
C Body
D HTML
Réponse
D
Voici un exemple de document HTML simple:
<HTML>
<HEAD>
</HEAD>
<BODY>
<P>Welcom To WayToLearnX.com!</P>
</BODY>
</HTML>
B
La propriété float indique qu’un élément doit être mis sur le côté droit ou gauche de son
conteneur. Exemple :
6. Peut-on aligner un élément en définissant margin-left et
margin-right?
A Oui, c’est possible.
B Non, ce n’est pas possible.
Réponse
B
Un élément commence toujours sur une nouvelle ligne et occupe toute la largeur
disponible.
7. Supposons que nous souhaitons organiser trois DIV de sorte que DIV 3 soit placé au-
dessus de DIV1. Maintenant, quelle propriété CSS nous allons utiliser pour contrôler
l’ordre de pile?
A d-index
B s-index
C x-index
D z-index
Réponse
D
La propriété z-index spécifie l’ordre d’empilement d’un élément. Exemple :
8. Peut-on définir la direction du texte via une propriété
CSS?
A Oui, c’est possible.
B Non, ce n’est pas possible.
Réponse
A
La propriété « direction » en CSS définit la direction du flux de contenu d’un élément.
Exemple
A
Les éléments h1 à h6 représentent six niveaux de titres dans un document HTML.
Exemple :
Titre de niveau 1
Titre de niveau 2
Titre de niveau 3
Titre de niveau 4
Titre de niveau 5
Titre de niveau 6
B, D
Exemple :
div {
border-style: dotted;
border-color: green;
}
<div>Welcom to WayToLearnX.com</div>
Résultat :
D
Une URL (Uniform Resource Locator) est un identifiant unique utilisé pour localiser une
ressource sur Internet. Il est également appelé une adresse Web. Les URL sont constituées
de plusieurs parties – y compris un protocole et un nom de domaine – qui indiquent au
navigateur Web où et comment récupérer une ressource.
Exemple: https://waytolearnx.com/2019/07/qcm-html-css-partie-1.html
A
Cascading Style Sheets (CSS) est un langage utilisé pour décrire la présentation d’un
document écrit dans un langage de balisage tel que HTML.
C
▪ HTTP (Hypertext Transfer Protocol) est l’ensemble des règles de transfert de
▪ Telnet est un protocole réseau utilisé pour accéder à des ordinateurs distants et à
A
100% fait référence à la largeur totale de la fenêtre du navigateur.
B
La balise <link> définit un lien entre un document et une ressource externe. Exemple:
B
Une classe est utilisée pour identifier plusieurs éléments, et son nom est précédé d’un
point (.). Exemple:
<html>
<head>
<style>
.ville {
background-color: blue;
color: yellow;
</style>
</head>
<body>
</body>
</html>
C
Exemple:
1. Laquelle des balises HTML suivantes insérera un saut de
ligne?
A <p>
B <break>
C <line>
D <br>
Réponse
D
La balise <br> indique un retour à la ligne
B
Exemple :
<table>
<tr>
<td>....</td>
<td>....</td>
</tr>
<tr>
<td>....</td>
<td>....</td>
</tr>
</table>
A
La balise <tt> fait partie des balises de mise en forme du texte. Exemple :
<p><tt>Teletype text</tt></p>
C
La balise <form> définit un formulaire qui est utilisé pour collecter les entrées des
utilisateurs. Exemple :
<form>
First name:
</form>
Sortie :
A
Un IFrame est un code HTML que vous pouvez utiliser pour incorporer une page HTML,
une page PDF, un autre site Web ou un autre fichier sécurisé sur Internet dans une autre
page Web à l’intérieur d’une fenêtre. Exemple :
A
7. Quelle propriété css vous utiliserez si vous voulez
ajouter une marge entre la bordure d’une DIV et son texte
intérieur?
A spacing
B margin
C padding
D inner-margin
Réponse
C
Exemple :
C
La propriété « font-size » permet de définir la taille de la police pour différents éléments.
Exemple :
D
La propriété « position » spécifie le type de positionnement utilisé pour un élément( elle
peut être static, relative, fixed, absolute ou sticky).
▪ HTML / CSS
▪ PHP
input:checked {
height: 50px;
width: 50px;
}
Sortie :
PROTOCOLE FTPLe protocole FTP (File Transfer Protocol) est un protocole client/serveur
utilisé pour transférer ou échanger des fichiers avec un ordinateur hôte. Le client peut…LIRE
PLUS
2. En HTML5 on spécifie _______ pour que le navigateur
affiche la page en mode standard.
A DOCTYPE
B HEAD
C BODY
D TITLE
Réponse
A
La déclaration <!DOCTYPE> doit être déclarée dans la première ligne dans votre
document HTML, avant la balise <html>.
La déclaration <!DOCTYPE> n’est pas une balise HTML; Il s’agit d’une instruction
pour informé le navigateur sur la version de HTML dans laquelle la page est
écrite.
2. Lorem ipsum
3. Lorem ipsum
4. Lequel des attributs est obligatoire dans la balise <img>?
A src
B href
C id
D alt
Réponse
A
L’élément <img> est défini avec l’attribut requis src, qui contient une URL
pointant vers l’emplacement de l’image. Exemple :
<img src="../../images/test.jpg">
5. PNG signifie:
A Portable Network Graphic
B Pivot Network Graphic
C Pichart Network Graphic
D Pythagorus Network Graphic
Réponse
A
L’abréviation PNG fait référence à Portable Network Graphics et représente un
format graphique conçu pour stocker des images graphiques bitmap.
6. GIF signifie:
A Graph Interchange Format
B Graphics Interlinked Format
C Graphics Interchange Format
D Aucune de ces réponses n’est vraie.
Réponse
C
GIF est le type de format de fichier le plus ancien et le plus agréé pour des images
simples. GIF représente un format de fichier bitmap.
D
Un ensemble de règles CSS se compose d’un sélecteur et d’un bloc de déclaration.
B
Exemple :
<table border="1">
B
La différence entre span et div est que l’élément span est généralement utilisé pour un
petit morceaux de code dans une ligne, tandis que l’élément div (division) est un bloc et
utilisé pour regrouper de gros morceaux de code. Exemple :
<div id = "myDiv">
</div>
A
SGML (Standard Generalized Markup Language) est un standard sur la manière de
spécifier un langage de balisage ou un ensemble de balises.
B
Exemple :
font-size: 12px;
C
Exemple :
h1 {
letter-spacing: 9px;
}
Résultat:
Lorem Ipsum
Le langage HTML est un langage :
c) compilé
a) html
b) <htlm>
c) <html>
a) variable
b) procédure
c) balise
a) la fin du code
b) un fichier
c) une remarque
c) fin de l’en-tête
a) l’en-tête de la page
Un document capable de produire un affichage contenant du texte, des images et des vidéos est, généralement, enregistré avec
a) HTM
b) CSS
c) HTTP
a) texte
b) binaire
c) graphique
a) en rouge
b) en italique
c) en gras
a) <body></body>
b) <b></b>
c) <head></head>
b) <tableau></tableau>
c) <i></i>
a) <form></form>
b) <p></p>
c) <formulaire></formulaire>
a) un lien hypertexte
a) un bouton
a) Data HTML
b) Dynamic HTML
c) Define HTML
a) le langage Jscript
c) au contenu et à la structure/span>
a) HTML 4.0
c) HTML 2.0
Pour documenter une balise quelconque avec une infobulle, j’utilise l’attribut :
a) info
b) title
c) titre
Le contrôle défini par <input type=text id="demo" ...> est accessible, par programmation, via l’identifiant :
a) input
b) demo
c) type
a) <style>
b) style
c) <style="text/css">
a) à gauche seulement
b) à droite seulement
a) <body></body>
b) <div></div>
c) <strong></strong>
DHTML prend en charge les événements. Cela signifie (notamment) qu’une modification :
Parmi les trois propositions, quelle est celle qui exécute la fonction intro au chargement de la page ?
a) <body onload:intro>
b) <body> onload="intro()"
c) <body onload="intro()">
Grâce à cette écriture <input type=button value="cliquez-moi" onclick="rep()">, un clic sur le bouton :
1) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens?
5 LINK
5 VLINK
5 ALINK
5 TEXT
2) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens déjà visités?
5 LINK
5 ALINK
5 TEXT
5 VLINK
3) Que veut dire le mot HTML?
5 Home Tool Markup Language
5 Hyperlinks and Text Markup Language
5 Hyper Text Markup Language
5 Hyper Text machine Language
4) Quelle balise te permettra d'insérer correctement une image de fond dans ta
page
HTML?
5 <BODY BACKGROUND="">
5 <IMG SRC="" BACKGROUND>
5 <BACKGROUND IMG="">
5 <IMG SRC="" TYPE="background">
5) Dans quel ordre devez-vous placer correctement les balises dans une page
HTML?
5 <HTML><TITLE><TITLE><BODY></BODY></HTML>
5 <HTML><TITLE></TITLE><BODY></BODY></HTML>
5 <HTML><TITLE></TITLE><BODY></HTML>
5 <HTML><HEAD></TITLE><BODY></BODY></HTML>
6) Quel attribut de la balise <BODY..> établit la couleur de fond d'une page web?
5 BACKGROUND
5 BACKCOLOR
5 BGCOLOR
5 BCOLOR
7) Parmi les choix suivants, lequel n'est pas un attribut de la balise <BODY>?
5 BACKGROUND
5 BGCOLOR
5 TEXT
5 FONT
8) Une paire de balises HTML doit être utilisé dans vos pages web, une au début et
l'autre sur la dernière ligne. De quelle paire s'agit-il?
<HTML> et </HTML>
5 <BODY> et </BODY>
5 <HEAD> et </HEAD>
5 <TITLE> et </TITLE>
9) La partie HEAD d'un fichier HTML contient. .
5 Toutes les balises d'un fichier HTML
5 Les balises du BODY
5 La balise TITLE
5 Aucune de ces réponses
10) Quand vous utilisez la balise <TITLE>, où est affiché le texte?
5 Le titre est placé au début de la page HTML.
5 Le titre est placé au début de chaque paragraphe.
5 Le titre est affiché dans le haut des navigateurs.
5 Toutes les réponses ci-dessus
11) Quelle est la balise encadrant les infomations qui ne seront pas éditées à
l'écran:
5 <HTML> et </HTML>
5 <HEAD> et </HEAD>
5 <TITLE> et </TITLE>
5 <BODY> et </BODY>
12) La majorité des informations d'une page Web se trouve dans:
5 La balise HEAD5 La balise TITLE
5 La balise BODY
5 La balise des commentaires <!-- -->
13) Indiquez une balise obligatoire pour fabriquer une page web?
5 <HTML>
5 <META>
5 <A>
5 <TABLE>
14) Si vous voulez utiliser une image comme fond d'écran, dans quelle balise
devezvous l'inclure?
5 <BKG>
5 <HEAD>
5 <BODY>
5 <BACKGROUND>
15) Que signifie l'attribut BGCOLOR de la balise <BODY>?
5 Couleur du texte.
5 Couleur de l'arrière plan.
5 Couleur de la cellule.
5 Couleur des images.
16) Pour éviter que le fond de l'écran ne bouge avec le texte via la barre de
défilement, il faut utiliser
5 BGPROPERTIES = "nomove"
5 BGPROPERTIES = "stop"
5 BGPROPERTIES = "stick"5 BGPROPERTIES = "fixed" 17)Un fichier HTML est:
5 Un document texte
5 Une présentation multimédia
5 Un logiciel
5 Une base de données relationnelle
18) Le HTML est une langage utilisé pour créer
5 Des images
5 De l'audio
5 Des vidéos
5 Des pages web
19) Quand vous enregistrez vos pages HTML, quelle extension devez-vous
utiliser?.
5 txt.
5 html5 .web.
5 www
20) Quel organisme est responsable des standards du langage HTML?
5 The World Wide Web Consortium
5 Microsoft
5 Netscape
21) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens?
5 LINK="#RRVVBB"
5 VLINK="#RRVVBB"
5 ALINK="#RRVVBB"
5 TEXT="#RRVVBB"
22) Quel est l'attribut à inclure dans la balise BODY pour changer la couleur des
liens déjà visités?
5 LINK="#RRVVBB"
5 VLINK="#RRVVBB"
5 ALINK="#RRVVBB"
5 TEXT="#RRVVBB"
23) Quelle est la bonne façon, selon les règles du langage HTML, de mettre de la
couleur jaune sur le fond de notre page Web?
5 <BACKGROUND>yellow</BACKGROUND>
<BODY COLOR="yellow">
<BODY BGCOLOR="yellow">
<BODY BGCOLOR="jaune">
<PRE>
48) Quelle balise permet d'avoir du texte rayé dans un document HTML?
5 <S>
5 <U>
5 <I>
5 <B>
49) Laquelle de ces balises permet d'écrire la formule H2O?
5 H<SUP>2</SUP>O
5 H<SUB>2</SUB>O
5 H<S>2</S>O
5 H<I>2</I>O
5 <INDENT> paragraphe </INDENT>
5 <BR> paragraphe </BR>
5 <BLOCKQUOTE> paragraphe </BLOCKQUOTE>
5 <Q> paragraphe </Q>
51) Quel est le code HTML pour mettre un texte un peu plus petit?
5 <S>
5 <STRIKE>
5 <SMALL>
5 <PETIT>
52) Les balises <B> </B> permettent d'avoir du texte en
5 Gras
5 Citation
5 Interligne
5 Italique
53) Quel est le rôle de la balise <U> ? 5 barrer un texte
5 écrire un texte souligné
5 écrire un texte en gras
5 écrire un texte plus grand
54) Pour obtenir des caractères les plus petits possibles (à partir d'une taille
normale), combien de fois doit-on utiliser la balise <SMALL>?
53
54
51
52
55) Quelle est la bonne façon d'écrire Ecole Secondaire
5 <I><U>École Secondaire</I></U>
5 </I></U> École Secondaire<I><U>
5 <I><U> École Secondaire</U></I>
5 <U><I> École Secondaire</U></I>
56) Parmi les choix de style logique ci dessous, lequel te permettra d'écrire du texte
avec une police non-proportionnelle de type "courrier"?
<SAMP>Texte</SAMP>
<EM>Texte</EM>
<STRONG>Texte</STRONG>
<CITE>Texte</CITE>
57) Avec les balises de style physique, quelle(s) balises(s) doit-on utiliser pour
avoir la taille la plus grande possible?
5 <BIG> </BIG>
5 <BIGGER> </BIGGER>
5 <BIGGEST> </BIGGEST>
5 <BIG><BIG><BIG><BIG> </BIG></BIG></BIG></BIG>
58) En temps normal, le caractère, ou chiffre, placé en indice a une taille plus petite
que le reste du texte, parmi les choix ci-dessous, lequel vous donnera un exposant
de taille identique au reste du texte dans l'exemple 2CO2.
5 2CO<BIG>b<SUB>2</SUB></BIG>
5 <BIG>CO<SUB>2</BIG></SUB>
5 2CO<SUB><BIG>2</SUP></BIG>
59) Quelle balise est-il recommandée d'utiliser pour laisser son adresse
personnelle dans une page web?
5 <ADDRESS> .</ADDRESS>
5 <E-MAIL> </E-MAIL>
5 <PERSON> </PERSON>
5 <MAIL> </MAIL>
60) Qu'arrivera-t-il si, de façon accidentelle, vous utilisez 2 fois de suite la balise
<I><I> pour mettre en italique un mot quelconque et que vous en fermez </I> juste
une?
5
5 Le reste du texte sera rendu en italique.
5 Rien ne s'affichera à cause de l'erreur.
5 Le mot en question sera affiché avec un italique plus prononcé.
61) Quelle balise de style physique te permettra d'avoir du texte en caractères gras
dans tes pages HTML?
5 <BLD>
5 <BB>
5 <B>
5 <BOLD>
62) Parmi les choix de style logique ci dessous, lequel te permettra de mettre en
gras le mot "Jamais"?
<EM>Jamais</EM>
<STRONG>Jamais</STRONG>
<SUB>Jamais</SUB>
5 <SUP>Jamais</SUP>
63) Parmi les choix de style logique ci dessous, lequel te permettra de mettre en
rayé les mots "École secondaire"?
5 <EM>École secondaire</EM>
5 <STRONG>École secondaire</STRONG>
5 <SUB>École secondaire</SUB>
5 <STRIKE>École secondaire</STRIKE>
64) Les balises <EM> et <STRONG> sont des exemples de balises de:
5 Style forcé
5 Style logique
5 Style physique
5 Style libre
5 Gras
5 Italique
5 Gras et Italique
5 Illisible
66) Quel est le code HTML pour mettre un texte un peu plus grand?
5 <SMALL>
5 <S>
5 <B>
5 <BIG>
67) Quelle balise pouvez-vous utiliser pour libérer la marge de gauche si vous
utilisez une image de fond avec une partie à gauche plus foncée ou différente (Image
de fond de style spirale) du reste de l'image?
5 EM>Texte</EM>
5 <INDENT>Texte</INDENT>
5 <CITE>Texte</CITE>
5 <BLOCKQUOTE>Texte</BLOCKQUOTE>
68) Quelle balise est-il recoomandée d'utiliser pour laisser son adrresse de courrier
électronique dans une page web?
5 <ADDRESS> .</ADDRESS>
5 <PERSON> </PERSON>
5 <E-MAIL> </E-MAIL>
5 <MAIL> </MAIL>
69) Avec "l'Explorateur Internet" de Microsoft, quelle balise ne mettra pas le texte
en italique?
5 <EM>
5 <I>
5 <SAMP>
5 <CITE>
70) Laquelle de ces balises permet d'écrire la formule E=MC2?
E = MC<SUP>2</SUP>
E = MC<SUB>2</SUB>
E = MC<S>2</S>
E = MC<I>2</I>
71) Les balises <I> </I> permettent d'avoir du texte en:
5 Gras
5 Citation
5 Interligne
5 Italique
72) Pour obtenir des caractères les plus grands possibles (à partir d'une taille
normale), combien de fois doit-on utiliser la balise <BIG>?
5 1
5 2
5 3
5 4
73) Quelle est la bonne façon d'écrire Ecole des Patriotes en plus d'être en gras?
5 <I><U><B> École Secondaire</B></U></I>
5 </I><B></U> École Secondaire<I><U></B>
5 <B><I><U> École Secondaire</U></I></B>
5 <B><U><I> École Secondaire</U></I></B>
5 <BLOCKQUOTE> .</BLOCKQUOTE>
5 <TAB> .</TAB>
5 Plusieurs fois <BLOCKQUOTE> . et autant de fois </BLOCKQUOTE> 5 <CITE>
</CITE>
75)Que fait la balise <TT>?
5 Écrit avec une police à espacement constant.
5 N'est pas une balise de disposition de texte.
5 Permet de respecter les retours et les espaces
5 Permet de cacher le texte de l'internaute.
76) Quelle balise peut-on utiliser pour avaoir la même police que dans "bloc-
notes"?
5 <EM>
5 <TT>
5 <SAMP>
5 <Q>
77) En temps normal, le caractère, ou chiffre, placé en exposant a une taille plus
petite que le reste du texte, parmi les choix ci-dessous, lequel vous donnera un
exposant de taille identique au reste du texte dans l'exemple 2ab2
5 2a<BIG>b<SUP>2</SUP></BIG>
5 <BIG>2ab<SUP>2</BIG></SUP>
5 2ab<SUP><BIG>2</BIG></SUP>
5 2ab<SUP><BIG>2</SUP></BIG>
78) Avec les balises de style physique, quelle(s) balise(s) doit-on utiliser pour avoir
la taille la plus petite possible?
5 <SMALL> </SMALL>
<SMALL>.<SMALL> </SMALL></SMALL>
<SMALLER> </SMALLER>
<SMALLEST> </SMALLEST>
79) Parmi les choix ci-dessous, lequel devras-tu utiliser pour écrire l'expression
mathématique 234 = 4 096
5 2<SUP>3<SUP>4</SUP></SUP> = 4 096
5 2<SUP>3<SUB>4</SUB></SUP> = 4 096
5 2<SUP><SUP>34</SUP></SUP> = 4 096
5 <SUP>2<SUP>3<SUP>4</SUP></SUP></SUP> = 4 096
80) Qu'arrivera-t-il si, de façon accidentelle, vous utilisez 2 fois de suite la balise
<B><B> pour mettre plus foncé un mot quelconque et que vous en fermez </B> juste
une?
5 Rien, le navigateur écrira la suite de façon normale.
5 Rien ne s'affichera à cause de l'erreur.
5 Le mot en question sera affiché avec un gras plus foncé.
81) Quelle balise te permettra d'avoir l'en-tête le plus gros?
5 <OL TYPE="1">
5 <H6>
5 <HEAD>
5 <H1>
82) Quelle balise doit-on utiliser pour faire un changement de ligne?
5 <BR>
5 <HR> 5 <UL>
5 <LI>
83) Parmi les choix suivants, lequel donne la plus petite taille?
5 <H1>
5 <H6>
5 <FONT SIZE=4>
5 <FONT SIZE=6>
84) Quelle est la grandeur des lettres par défaut?
5 <FONT SIZE=1>
5 <FONT SIZE=2>
5 <FONT SIZE=3>
5 <FONT SIZE=4>
85) L'attribut de la balise <BODY> pour la couleur du texte par défaut est.
TEXTE
FACE
FONT
5 TEXT
86) Pour une balise imaginaire <HOHO>, que doit être la balise de fermeture?
5 <\HOHO>
5 </HOHO>
5 <END/HOHO>
5 <HOHO/>
87) Parmi les choix ci dessous, laquelle te permettra de séparer les paragraphes
par une ligne blanche?
5
5 <P>
5 <OL>
5 <DT>
88) Si vous ne spécifiez aucune police spéciale à utiliser dans <FONT> ou
<BASEFONT> quelle police sera utilisée par défaut?
5 La police "Times New Roman".
5 La police "Arial".
5 La police par défaut selon la version du navigateur.
5 La page ne sera pas affichée - il y aura un message d'erreur
89) Si vous voulez avoir un paragraphe avec une police légèrement plus petite que
les autres, quelle balise HTML devez-vous alors utiliser?
5 <TEXT="-1"> paragraphe </TEXT>.
5 <FONT SIZE="-1"> paragraphe </FONT>.
5 <FONT TEXT="-1"> paragraphe </FONT>.
90) Les paragraphes sont définis par la paire de balises:
5 <P> <P>
5 <P> </P>
5 </P> <P>
5 <P> <endP>
91) Une fin de ligne dans le langage HTML utilise la balise
5 <HR> 5 <BR>
5 <PR>
5 <TR>
92) Parmi les choix ci-dessous, lequel devrez-vous utiliser pour placer un
paragraphe en retrait - pas collé contre la marge de gauche?
5 <INDENT> paragraphe </INDENT>
5 <BR> paragraphe </BR>
5 <BLOCKQUOTE> paragraphe </BLOCKQUOTE>
5 <Q> paragraphe </Q>
93) Parmi les choix ci-dessous, lequel vous permettra de centrer un en-tête de
niveau 3?
5 <CENTER><H3>Information HTML</H3></CENTER>
<FONT ALIGN="center"><H3>HTML</H3></FONT>
<MIDDLE><H3>Information HTML</H3></MIDDLE>
<H3 ALIGN="center">Information HTML</H3>
94) Parmi les choix ci-dessous, lequel vous permettra de placer un paragraphe
contre la marge de droite?
5 <TEXT ALIGN="right"> paragraphe </TEXT>.
5 <BODY ALIGN="right"> paragraphe </BODY>.
5 <ALIGN="right"> paragraphe </ALIGN>.
5 <P ALIGN="right"> paragraphe </P>.
95) Parmi les choix de réponses, lequel est juste dans l'utilisation de la balise
<FONT>?
5 <FONT FACE="Arial" SIZE=4 COLOR="#FFFFFF">
5 <FONT FACE="A" SIZE=0 COLOR="bluish">
5 <FONT FACE="Arial" SIZE=44 COLOR="#FFFFFF">
5 <FONT FACE="Arial SIZE=4 COLOR=#FFFFFF">
96) Quelle est la différence entre la balise <P> et la balise <BR>?
5 La balise <P> place le texte en retrait et pas la balise <BR>.
5 Vous devriez utiliser seulement la balise <P> et jamais la balise <BR>
5 Rien, ils sont tous les deux identiques
97) Si vous voulez un paragraphe avec des caractères de couleur rouge, quelle
balise HTML débutera le paragraphe et quelle balise HTML se trouvera à la fin du
paragraphe?
5 <FONT COLOR="red"> au début et </FONT> à la fin.
5 <FONT="red"> au début et </FONT> à la fin.
5 <TEXT COLOR="red"> au début et </TEXT> à la fin.
5 <FONT COLOR="red"> au début et </FONT COLOR> à la fin.
98) Quelle est la plus grande taille que l'on peut obtenir avec la balise <FONT>?
5 3
5 6
5 7
5 12
99) Parmi les choix suivants, lequel est vrai au sujet des en-tête de paragraphes?
5 <H6> et </H6> donnent la plus grande taille.
5 <H1> et </H1> donnent la plus petite taille.
5 <H2> et </H2> donnent une taille plus grande que <H3> et </H3>
5 <H2> et </H2> donnent une taille plus petite que <H3> et </H3>
100) Quelles balises devez-vous utiliser pour avoir un titre de paragraphe de niveau
1 avec une police de type "Arial" , centré et de couleur bleue?
5 <CENTER><FONT FACE = "Arial" COLOR =
"blue"><H1>Titre</H1></FONT></CENTER>
5 <FONT FACE="Arial" COLOR=blue"
ALIGN="center"><H1>Titre</H1></FONT>
5 <FONT TYPE="Arial" COLOR="blue"
ALIGN="center"><H1>Titre</H1></FONT>
<FONT FACE="Arial" COLOR="blue" ><H1>Titre</H1></CENTER>
101)
5 <H1>
5 <H3>
5 <H6>
5 <H9>
102) Quelle balise utilise-t-on pour séparer des section sur une page Web?
5 <DIV>
5 <SPLIT>
5 <SECT>
5 <NEW>
103) Quel est l'attribut qui vous permet de changer la couleur avec FONT?
5 SIZE
5 POLICE
5 FACE
5 COLOR
104) Quelle balise sert à changer de ligne et inserer une ligne blanche.
5 <HR>
5 <BR>
5 <P>
5 <PRE>
105) Parmi les choix suivants, lequel des balises suivantes te permettra d'avoir du
texte en bleu dans une page HTML?
5 <FONT TEXT="#0000FF"> </FONT>
5 <FONT COLOR="#0000FF"> </FONT>
5 <FONT COLOUR="#0000FF"> </FONT> 5 <FONT BGCOLOR="#0000FF"> </FONT>
106) Quel est l'effet de la balise <BR> ?
5 Fait passer une ligne
5 Fait passer une ligne et laisse une tabulation
5 Passe à la ligne suivante
5 Passe à la ligne suivante et laisse une tabulation
107)Quel est l'effet de la balise <P> ?
5 Fait passer une ligne
5 Fait passer une ligne et laisse une tabulation
5 Passe à la ligne suivante
5 Passe à la ligne suivante et laisse une tabulation
108) Occasionnellement dans vos pages HTML, vous voudriez ajouter un
espacement vertical entre les paragraphes. Quelle balise devriez-vous utiliser?
5 <BR>
5 <HR>
5 <TR>
5 <VR>
109) Que fait la balise </P>
5 Terminer un paragraphe
5 Terminer une section dans le texte
5 Débuter une nouvelle ligne
5 Débuter un nouveau paragraphe
110) Lequel de ces attributs ne peut pas être utilisé avec la balise <FONT>?
5 COLOR
5 ALIGN
5 SIZE
5 FACE
111) Parmi les choix suivants, lequel donnera la plus grande taille possible pour une
page HTML?
5 <FONT SIZE=1>
5 <FONT SIZE =7>
5 <BIGGEST FONT=7>
5 <LARGEST FONT=3>
112) Pour fixer la police de caractères d'un texte, on utilise l'attribut
5 FONT
5 FACE
5 POLICE
113) Quelle balise utilise-t-on pour changer le style du texte de normal à ARIAL?
5 <FONT STYLE ="Arial">
5 <FONT FACE ="Arial">
5 <FONT SIZE ="Arial">
5 <FONT CHANGE= "Arial">
114) Lequel de ces options ne fonctionnera pas avec <P> ?
5 ALIGN = "left"
5 ALIGN = "center"
5 ALIGN = "right"
5 ALIGN = "top"
115) Quelle est la balise utilisée pour sauter une ligne?
5 <DIV>
5 <I>
5 <BR>
5 <NL>
116) Quel est le rôle des balises <Hn> </Hn>?
5 Mettre une ligne horizontale de différentes largeur.
5 Placer des titres de différents niveaux.
5 Placer horizontalement du texte de tailles différentes.
5 Placer le texte à une certaine distance du bord gauche de l'écran.
117) Quelle est la taille des lettres par défaut?
5 <FONT SIZE=1>
5 <FONT SIZE=2>
5 <FONT SIZE=3>
5 <FONT SIZE=4>
118) Que fait la balise <P ALIGN="center">?
5 Débute un nouveau paragraphe avec le texte aligné au centre.
5 Débute un nouvelle section avec le texte aligné au centre.
5 Débute un nouvelle ligne avec le texte aligné au centre.
5 Toutes ces réponses.
119) Parmi les propositions suivantes quelle est celle qui est juste:
5 Le Heading 6 est plus grand que le Heading 1.
5 Il y a 6 niveaux de Heading.
5 La balise permettant de mettre un titre à l'écran est <TITLE> et </TITLE>.
5 La balise <FONT> permet de changer de taille sur 4 niveaux.
120) Quelle différence y a-t'il entre un en-tête H4 et un en-tête H6?
5 L'en-tête H4 représente un format plus grand que l'en-tête H6.
5 L'en-tête H4 représente un format plus petit que l'en-tête H6. 5 C'est la même grandeur
de texte mais de couleur différente.
5 L'en-tête H4 est représenté en italique et l'en-tête H6 en gras.
1° Les balises <audio> et <video> sont disponibles
2° Quelle information contenue entre les balises <head> </head> est visible quand on surfe ?
Réponse : <strong>
Réponse : /* */
Réponse : line-height
Réponse : barré
7° Comment couper un mot trop long ?
Réponse : <wbr>
9° Quelle balise utiliser pour regrouper les champs d'un formulaire en les entourant d'une bordure ?
Réponse : <fieldset>
Réponse : permet d'effectuer des rendus dynamiques d'images via des scripts
1. Quelle balise utilisera-t-on de préférence pour le titre principal d'une page html:
• <h1>
• <head>
• <heading>
• <h6>
2. Utiliser la balise h1 signifie que l'on veut que le titre apparaisse plus gros que
si l'on utilisait la balise h2 :
• vrai
• faux
3. Pour mettre en gras une partie de texte dans une page html:
• Vrai
• Faux
• Vrai
• Faux
6. On souhaite rédiger une page html avec des énoncés et des corrections.
Pour cela, on va utiliser la balise <div>. Quel est l'attribut de <div> qui permettra de
différencier les énoncés des corrections ?
• l'attribut class=""
• l'attibut id=""
• la balise <strong>
• la balise <p>
• <!doctype html5>
• <!doctype html>
• <a target="http://wikipedia.org">Wikipédia</a>
• <a href="http://wikipedia.org">
• <a href="http://wikipedia.org">Wikipédia</a>
9. Quels éléments sont nécessaires pour créer une liste dont les items ne sont
pas numérotés ?
• ul et li
• ol et li
• ul et ol
10. Laquelle de ces syntaxes est correcte pour embarquer une image dans la
page html?
12. Laquelle de ces pratiques doit être exceptionnelle (c'est à dire très rarement
utilisée):
• #351607
• #231007
• #320170
• #071023
• rgb(170, 17, 0)
• rgb(20, 11, 0)
• rgb(100, 17, 0)
•
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title> Le titre de la page </title>
</head>
<html lang="fr">
<body>
ICI LE CONTENU DE LA PAGE
</body>
</html>
•
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title> Le titre de la page </title>
</head>
<body>
ICI LE CONTENU DE LA PAGE
</body>
</html>
•
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title> Le titre de la page </title>
</head>
<body>
<html lang="fr">
ICI LE CONTENU DE LA PAGE
</html>
</body>
•
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title> Le titre de la page </title>
</head>
<body>
ICI LE CONTENU DE LA PAGE
</html>
</body>
p.bli{
color: red;
}
• <section id="sidebar">
• <sidebar>
• <aside> (correct)
• <details>
• La nouvelle balise <time> permet de baliser une date structurée. Quelle
serait sa syntaxe pour le 1er avril 2012 à 13h37 ?
• <time datetime="2012-04-01T13:37:00Z"></time> (correct)
• <time value="2012-04-01 13:37"></time>
• <time datetime="01/04/2012 13H37M00S"></time>
• À partir de quelle version d'Internet Explorer peut-on utiliser nativement
les éléments de section HTML5 (sans hack ou script complémentaire) ?
• Internet Explorer 8
• Internet Explorer 9 (correct)
• Internet Explorer 10
• Quelle est la méthode pour associer une légende complète à une
illustration ?
• <figure><img src="image.jpg"><figcaption>La
légende...</figcaption></figure> (correct)
• <figure src="image.jpg" legend="#cap1"></figure><figcaption id="cap1">La
légende...</figcaption>
• <figure><legend>La légende...</legend><img src="image.jpg"></figure>
C'est l'attribut value sur l'élément progress qui détermine son état.
9. Quel attribut permet d'afficher une image par défaut pour l'élément
<video> ?
C'est l'attribut poster, auquel on donne le chemin vers une image, qui associe
un aperçu à la balise video.
10. Quelle balise doit permettre l'inclusion de sous-titres textes dans les vidéos
lues avec <video> ?
• 2000
• 2001
• 2002
• 2003
La bonne réponse est 2000, plus précisément le 26 janvier 2000, puis révisé en
août 2002.
• <P></P>
• </p><p>
• <P></p>
• <p></p>
La bonne réponse est <p></p>. Les majuscules ne sont pas autorisées dans le
nom des balises en XHTML.
15. Quel élément dans cette liste est déprécié (deprecated) en XHTML 1.0 strict ?
• <table>
• <em>
• <font>
• <blockquote>
• <option>
• <string>
• <tong>
• <samp>
• <applet>
• <center>
• alt
• title
• src
• desc
• longdesc
"title" correspond à l'infobulle, le petit cadre (jaune par défaut) qui s'affiche au
survol d'un élément.
La confusion provient généralement d'un bug de comportement de IE : celui-ci
crée également une infobulle avec l'attribut "alt", alors que cela n'a pas lieu
d'être.
Voici comment contrôler et modifier l'apparence d'une infobulle.
• <code>
• <javascript>
• <java>
• <script>
Les listes de définitions sont conçues pour des glossaires. Les glossaires
comprennent une liste d'éléments. Les éléments d'une liste de définitions sont
constitués par une expression à définir (<dt>) et la définition qui le concerne
(<dd>).
Source : SelfHTML.
Les attributs "src" (source) et "alt" (texte alternatif) sont obligatoires dans les
doctypes frameset, transitional et strict. L'attribut "alt" peut avoir une valeur
vide lorsqu'il désigne une image décorative (il est cependant préférable de
privilégier les feuilles de style dans ce cas).
Notez que la balise <img> est auto-fermante et finit par un slash avant le
chevron de fermeture.
Source : Wikipedia.
Dans cette liste, seule la dernière affirmation est vraie. XHTML n'est qu'une
reformulation plus rigoureuse de HTML (fermeture des balises, écriture en
minuscule, etc.).
Toutes les autres notions (tableaux, CSS, sémantique, accessibilité) existent
depuis longtemps en HTML. De ce côté, XHTML n'a rien apporté.
24. Comme quelques autres exceptions, l'élément de type bloc <p> a une
spécificité, laquelle ?
o Il ne peut pas contenir d'élements de type en-ligne
o Il ne peut pas contenir d'éléments de type blocs
o Il ne peut pas être enfant d'un élément <form>
o <p>, <div>, <form> ou autre, c'est la même chose finalement
Par défaut, les éléments de type bloc occupent toute la largeur disponible,
s'affichent les uns sous les autres et peuvent contenir d'autres éléments de
type bloc.
Il existe cependant quelques exceptions qui ne peuvent contenir que des
éléments de types en-ligne. Parmi ces exceptions, <p>, <hn>, et <address>.
<form action="kiwi.html">
<p>
<input type="text" value="fruit" />
</p>
</form>
Pour en savoir plus sur les spécificités de certains éléments, direction la FAQ
28. Quel élément dans cette liste est déprécié (deprecated) en XHTML 1.0 ?
o <strong>
o <em>
o <i>
o <b>
o <u>
Dans cette liste, seul la balise <u> (soulignement) n'est plus acceptée en
XHTML.
29. Quel attribut est-il convenu d'employer pour désigner un élément qui ne
sera employé qu'une seule fois dans le document ?
o id
o name
o class
o alt
La bonne réponse est "id". Privilégiez les "id" pour vos éléments uniques, et
appliquez des classes aux éléments répétés. L'attribut "name" sauf exceptions
n'est plus valide en XHTML.
Cette construction n'est pas valide car l'élément <ul> ne peut contenir
directement que des éléments <li>.
Dans cet exemple, l'élément <p> devra être contenu au sein de l'élément <li>
<ul>
<li>élément de liste
<p>détail de l'élément</p>
</li>
<li>autre élément de liste</li>
</ul>
<menu>, <strike> et <isindex> ont existé et ont été dépréciés avec la version
HTML 4.01. La bonne réponse est donc <baseframe>
Voici un tableau récapitulatif de toutes les balises existantes ou ayant existé.
35. Dans quels cas, Internet Explorer 6 ne va-t-il pas passer en mode Quirks ?
o une page HTML Frameset ou Transitionnel
o Une page HTML sans DOCTYPE (donc non valide)
o une page avec un DOCTYPE XHTML précédé du prologue XML
o une page HTML qui contient n'importe quel caractère avant la DTD
Seul l'attribut type est requis pour le type de contenu, et l'élément script ne
fait pas partie des éléments pour lesquels la syntaxe <script /> est
recommandée par XML1.0 et XHTML1.0 lorsqu'ils sont vides.
Pour des raisons d'interopérabilité, il est recommandé de ne jamais employer
la seconde syntaxe. La bonne réponse est donc <script
type="text/javascript"></script>
Dans tous les cas, vous aurez bien-sûr remarqué l'oubli d'un guillemet dans la
proposition 2, qui la rend invalide.
46. Pour l’élément "input", quelle valeur de l’attribut "type" n’existe pas ?
o checked
o radio
o password
<li> est la bonne réponse car cet élément peut contenir tous types d'éléments
contrairement à <ul> qui ne peut contenir directement que des éléments <li>,
et à <p> qui ne peut pas contenir de blocs.
Parents et enfants, les exceptions.
48. Quel couple d’attributs permet de lier sémantiquement un "label" à un
champ dans un formulaire ?
o to / name
o rel / id
o for / id
49. En XHTML Strict, lequel de ces éléments est le plus restrictif au niveau des
enfants directs possibles ?
o <ol>
o <p>
o <dl>
La bonne réponse est <ol> qui ne peut être parent direct que d'éléments <li>.
<p> peut contenir tous les éléments de type inline, et <dl> peut contenir des
éléments <dt> et <dd>
Un script PHP devrait commencer par <?php et se termine par ?>, exemple:
<? php
?>
B, C, D
PHP, Apache et un serveur IIS ou WampServer doit être installé sur votre ordinateur pour
exécuter des scripts PHP.
<?php
try {
?>
$nbr1= 2;
$nbr2 = 2;
?>
A Erreur
B4
C2+2
D 2. + 2
Réponse
C
Les deux points sont utilisés pour la concaténation.
9. Quelle est la sortie de ce code?
<?php
$nbr1= 2;
$nbr2 = 2;
?>
A Erreur
B4
C2+2
D 2. + 2
Réponse
B
L’instruction sera évaluée.
$firstname = 'Alex';
$reffirstname = &$firstname;
echo $reffirstname;
echo $firstname;
?>
A Erreur
B My first name is : AlexAlex
C My first name is : AlexMy first name is : Alex
D My first name is : Alex Alex
Réponse
C
La ligne
$reffirstname = &$firstname;
référencera $firstname via $reffirstname.
D
Toutes les options ci-dessus sont correctes.
5. Laquelle des déclarations PHP suivantes affichera Hello
World à l’écran?
A
echo ("Hello World");
B
print ("Hello World");
C
printf ("Hello World");
D
sprintf ("Hello World");
E Tout les réponses sont vrais
Réponse
A, B, C
La fonction echo(), print() et printf() peuvent être utilisés pour afficher une déclaration à
l’écran. La fonction sprintf() est fonctionnellement identique à printf(), sauf que la sortie est
affectée à une chaîne plutôt que sur le navigateur.
A
rsort() – Trie un tableau dans l’ordre inverse. Exemple :
<?php
$languages = array("Java","PHP","C++");
rsort($languages);
?>
La sortie:
———————-
C++
Java
PHP
$color = "blue";
$var = $color[2];
echo "$var";
?>
Al
B $color[2]
C $var
Du
Réponse
D
PHP traite les chaînes de caractéres de la même manière que les tableaux, ce qui permet
d’accéder à des caractères spécifiques via la notation de tableau.
$var = "Bon";
$var .= "jour";
echo "$var";
?>
A Bon
B jour
C jourBon
D Bonjour
Réponse
D
L’opérateur .= est un opérateur de concaténation. $var est égal à sa valeur actuelle concaténée
avec «jour».
A
PHP est un langage sensible à la casse.
C
La fonction in_array() vérifie si une valeur spécifique existe dans un tableau. Exemple :
<?php
if (in_array("PHP", $languages))
else
?>
La sortie:
———————-
$number = 9876;
echo $nbr[0];
?>
A9
B6
C 9876
D8
Réponse
C
L’opérateur (array) est un opérateur de casting utilisé pour convertir les valeurs d’un type de
données vers un tableau.
$autre = 5;
echo "$total";
?>
A Erreur
B 20 personne
C 20
D 15 personne
Réponse
C
La valeur 15 est utilisée dans le calcul. Pourtant, si elle commence par autre chose qu’une valeur
numérique, la valeur sera 0.
$ tab = array();
$ tab = [];
5. Pouvez-vous attribuer une valeur par défaut à un paramètre
de fonction?
A Vrai
B Faux
Réponse
A
Nous pouvons définir un paramètre avec une valeur par défaut si l’appel de la fonction ne le
transmet pas. Exemple :
echo $default;
myFunction();
La sortie :
————
10
function count() {
static $i = 0;
$i++;
echo $i;
count();
count();
count();
?>
A 123
B 111
C 000
D 011
Réponse
A
Puisque la variable $i est statique, il garde sa valeur précédente chaque fois que la fonction est
appelée.
B
LE mot-clé « continue » amène la boucle à ignorer le reste de ses instructions et à tester de
nouveau son état avant de le répéter.
$a = 4;
$b = 4;
?>
A 4 === 4
B $a === $b
C1
D False
Réponse
C
L’opérateur === renvoie 1 si $a et $b sont équivalents et que $a et $b ont le même type.
A
5. Laquelle des fonctions suivantes permet d’extraire une
partie d’un tableau?
A array_reverse()
B array_search()
C array_shift()
D array_slice()
Réponse
D
array_slice() – Permet d’extraire une partie d’un tableau. Exemple:
<?php
$a = array("Java","PHP","Python","Pascal","C");
print_r(array_slice($a,2));
?>
La sortie:
$return = $arg;
$arg += 1;
return $return;
$a = 5;
$b = increment( $a );
?>
A a est 5 et b est 6
B a est 6 et b est 5
C Les deux sont 5
D Les deux sont 6
Réponse
B
$a contient 6 parce que $arg est passé par référence. $b contient 5 parce que la valeur de retour
de la fonction est une copie de la valeur initiale de l’argument.
A
« break » met fin à la boucle « for » ou la condition « switch » et transfère l’exécution à
l’instruction qui en suit immédiatement.
$n = 24;
?>
A
Il a $n ans
Il a 24 ans
Réponse
A
Lorsqu’une chaîne est entourée par des simples guillemets (‘ ‘), les variables et les séquences
d’échappement ne sont pas interprétées.
1. Lequel des énoncés suivants est correct à propos de PHP?
A PHP remplit des fonctions système, c’est-à-dire à partir d’un fichier de système qu’il
peut créer, ouvrir, lire, écrire et fermer.
B PHP peut manipuler des formulaires, c’est-à-dire rassembler des données à partir
de fichiers, enregistrer des données dans un fichier, envoyer un courrier électronique
et renvoyer des données à l’utilisateur.
C Vous ajoutez, supprimez, modifiez des éléments dans votre base de données via
PHP.
D Tout les réponses sont vrais
Réponse
D
Toutes les options ci-dessus sont correctes.
C
4. Est-ce que nous pouvons utiliser plusieurs versions de PHP
en même temps?
A Vrai
B Faux
Réponse
if ($var) {
echo 'true';
} else {
echo 'false';
}
A True
B False
Réponse
'a',
4 => 'b',
1 => 'c',
'd'
);
A
$tab[0]
B
$tab[1]
C
$tab[2]
D
$tab[3]
E
$tab[4]
F
$tab[5]
Réponse
F
B
Depuis PHP 5, vous pouvez utiliser le type d’un argument dans une déclaration de fonction.
Lorsque vous appelez la fonction, PHP vérifie que les arguments sont du type spécifié.
<?php
echo trim($str,"Held!");
?>
La sortie:
—————-
llo Wor
A
strstr() est un alias de strchr(), qui permettent de trouver la première occurrence d’une chaîne
de caractéres. Exemple:
<?php
$email = '[email protected]';
echo $domainName;
?>
La sortie:
————————
@test.com
B
La fonction set_time_limit() qui permet d’ajuster dynamiquement le temps d’exécution
maximum autorisé pour un script. La limite par défaut est généralement 30 secondes
function display($msg)
echo "$msg";
$var = "display";
$var("Hello World!");
?>
A Error
B Hello World!
C0
D $msg
Réponse
B
Il est possible d’appeler une fonction en utilisant une variable qui stocke le nom d’une fonction.
echo "$totale";
check(5);
?>
A 15
B0
C5
D 10
Réponse
C
Vous pouvez ajouter des arguments facultatifs en les plaçant à la fin de la liste et en leur
affectant une valeur par défaut.
echo "Start", 1, 2, 3;
B
Exemple:
<?php
var_dump(headers_list());
?>
La sortie:
—————–
array(4)
function x()
function y()
x();
x();
?>
A JE SUIS Y
B JE SUIS YJE SUIS X
C Error
D JE SUIS X Erreur
Réponse
D
La sortie :
$str2 = "world!";
function fun($str1)
echo $str1;
echo $str2;
fun("Hello");
?>
A Helloworld!
B Error
C Hello
D Helloworld!world!
Réponse
C
Si vous voulez mettre des variables dans une fonction qui n’ont pas été passées par celle-ci, vous
devez utiliser «global».
<?php
$str2 = "world!";
function fun($str1)
//Variable globale
global $str2;
echo $str1;
echo $str2;
fun("Hello");
?>
La sortie
——————-
Helloworld!
<?php
?>
La sortie
——————-
9
D
La constante _CLASS_ renvoie le nom de la classe. (Ajouté dans PHP 4.3.0) Depuis PHP 5, cette
constante renvoie le nom de la classe telle qu’elle a été déclarée (sensible à la casse). En PHP 4,
sa valeur est toujours minuscule.
B
Exemple:
<?php
function fun()
$args = func_get_args();
foreach ($args as $key => $value)
fun();
/* Il n'affichera rien */
fun("Hello");
?>
C
La fonction date() renvoie une chaîne formatée représentant une date. Voici un exemple:
<?php
?>
La sortie:
——————————–
D
Nous utilisons la fonction glob(), voici un exemple
<?php
print_r($files);
?>
La sortie:
——————————–
Array
A
La fonction uniqid() génère un identifiant unique basé sur le microtime (heure actuelle en
microsecondes). Voici un exemple:
<?php
echo uniqid();
?>
La sortie:
——————————–
5be69f0134689
echo "chr(43)";
?>
A–
B*
C+
D=
Réponse
C
La fonction chr() renvoie le caractère d’une valeur ASCII spécifiée. Puisque la valeur ASCII de
+ est 43, le + a donc été affiché.
C
array_keys() est une fonction intégrée à PHP et est utilisée pour renvoyer toutes les clés d’un
tableau.
<?php
$tab = ("php" => "first", "java" => "second ", "python" => "third")
?>
La sortie:
——————————–
Array
)
7. Quelle sera la sortie du code PHP suivant?
<?php
?>
A welcome to Waytolearnx
B welcome to waytolearnx
C Welcome to Waytolearnx
D Welcome to waytolearnx
Réponse
A
La fonction lcfirst() convertit le premier caractère d’une chaîne en minuscule.
<?php
$languages = array("Java","PHP","C++");
rsort($languages);
?>
La sortie:
———————-
C++
Java
PHP
?>
A Welcome to waytolearnx
B welcome to Waytolearnx
C Welcome to Waytolearnx
D Welcome To Waytolearnx
Réponse
D
La fonction ucwords() convertit le premier caractère de chaque mot d’une chaîne en majuscule.
echo ord("hello");
?>
A 106
B 105
C 104
D ehllo
Réponse
C
La fonction ord() renvoie la valeur ASCII du premier caractère d’une chaîne. La valeur ASCII
de h est 104.
$ tab = array();
$ tab = [];
C
Comme dans de nombreux langages de programmation, la valeur d’index du premier élément
d’un tableau est 0.
C
La fonction in_array() vérifie si une valeur spécifique existe dans un tableau. Exemple :
<?php
if (in_array("PHP", $languages))
else
?>
La sortie:
———————-
<?php
$tab = array('php','java','python');
if (is_array($tab))
else
echo 'Ceci n'est pas un tableau....';
?>
La sortie:
—————————–
<?php
print_r($var);
?>
La sortie:
—————————–
Array (
?>
A True
B False
C0
D1
Réponse
C
La fonction array_search() recherche dans un tableau la valeur spécifiée en paramètre et
renvoie sa clé si elle est localisée et FALSE sinon.
echo (next($lettres));
echo (next($lettres));
?>
A BC
B AB
C CA
D CB
Réponse
A
La fonction next() renvoie la valeur du tableau qui se trouve dans la position qui suit
immédiatement celle du pointeur de tableau actuel.
C
Exemple:
<?php
echo prev($languages);
?>
La sortie:
———-
PHP
Java
PHP
?>
A3
B4
C5
D6
Réponse
D
Le tableau contenant X et Y est considérée comme un élément, et son contenu aussi considérée
comme un élément.
<?php
$languages = array("Java","PHP","C++");
rsort($languages);
?>
La sortie:
———————-
C++
Java
PHP
C
« ? » Indique que l’expression régulière doit correspondre à zéro ou une occurrence de
l’expression précédente
B, C
8. Quelle sera la sortie du code PHP suivant?
<?php
print_r($color);
?>
A Array ( [2] => citrine )
B Array ( [1] => citron [2] => citrine )
C Array ( [0] => citron [1] => citrine )
D Array ( [0] => blue [1] => citron [2] => citrine [3] => flirt )
Réponse
B
B
Nous utilisons la fonction implode(), exemple:
<?php
$arr = array('Welcom','to','WayToLearnX.');
?>
La sortie:
————————-
Welcom to WayToLearnX.
$auteur = "[email protected]";
$auteur = str_replace("a","@",$auteur);
?>
A Contactez l’auteur à supportaw@[email protected].
B Cont@ctez l’@uteur à support@w@[email protected].
C Contactez l’auteur à support@w@[email protected].
D Erreur
Réponse
C
$url = "[email protected]";
?>
A [email protected]
B support
C support@
D waytolearnx.com
Réponse
preg_match('/^[0-9]+$/', $var)
?>
A n’importe quel caractère
B un caractère entre 0 et 9
C un ou plusieurs caractères compris entre 0 et 9
D zéro ou plusieurs caractères entre 0 et 9
E tout caractère compris entre 0 et 9 suivi d’un $
Réponse
C
preg_match('/^[0-9]{3}-[0-9]{2,4}$/', $var)
?>
A 5-88
B 1-2345
C 416
D 213-99
E 87090
Réponse
$text="Welcom To WayToLearnX";
?>
A Array ( [0] => Welcom)
B Array ( [0] => Welcom To WayToLearnX )
C Array ( [0] => Welcom [1] => To [2] => WayToLearnX )
D Aucune de ces réponses n’est vraie.
Réponse
print_r( $keywords );
?>
A Array ( [0] => Hi, welcom to WayToLearnX)
B Array ( [0] => Hi [1] => welcom to WayToLearnX )
C Array ( [0] => Hi [1] => Welcom [2] => To [3] => WayToLearnX )
D Aucune de ces réponses n’est vraie.
Réponse
B
Il divise s’il rencontre un espace(s : space) ou une virgule(,).
$names = array('Alex','John','Yohan','Thomas','Bob');
print_r( $output );
?>
A Array ( [0] => Alex [1] => John [4] => Bob )
B Array ( [0] => Alex [1] => John [4] => Yohan )
C Array ( [0] => Alex [1] => Thomas [4] => Bob )
D Array ( [0] => Yohan [1] => Thomas [4] => Bob )
Réponse
A
$regex = "colou{0,1}r";
?>
A color
B colour
C colouur
D colouuur
Réponse
A, B
Ici, l’utilisation de {0,1} rend le « u » facultatif.
print_r( $output );
?>
A Array ( [2] => python )
B Array ( [0] => PHP )
C Array ( )
D Array ( [0] => PHP [2] => python )
Réponse
D
Ici, nous recherchons dans le tableau $languages les éléments commençant par ‘p’ (minuscules
ou majuscules)
?>
A0
B1
C False
D True
Réponse
B
La fonction « preg_match() » recherche si le caractère ‘s’ est dans la plage de caractères [a-z].
La plage représente tous les caractères de a à z. Il retourne 1 pour le succès.
<?php
?>
La sortie:
————————–
Hello
echo ucwords($title);
?>
A Welcom to waytolearnx!
B Welcom To Waytolearnx!
C WELCOM TO WAYLEARNX!
D welcom to waytolearnx!
Réponse
B
La fonction ucwords() met en majuscule la première lettre de chaque mot d’une chaîne.
<?php
?>
D
Exemple : La fonction str_replace() remplace le mot « world » par « Jean »:
<?php
?>
<?php
?>
10. Les caractères suivant \,?, *, \, &, $,] sont échappés par
quelle méthode?
A remove()
B quotemeta()
C removechar()
D addslashes()
Réponse
B
D
PHP prend en charge cinq portées: public, private, protected, final et static.
B
En utilisant le mot-clé « instanceof », nous pouvons déterminer si un objet est une instance d’une
classe.
echo “True”;
C
La fonction class_exist() renvoie true ou false selon que la classe existe ou non dans le script en
cours d’exécution.
<?php
if (class_exists('MaClass')) {
?>
C
La fonction « is_a() » renvoie la valeur true si l’objet appartient à un type de classe ou s’il
appartient à une classe qui est une sous-classe de cette classe. Ou bien false est retourné.
<?php
if ( is_a($maclasse, 'MaClasse') )
{
echo "True";
10. Lequel des mots-clés suivants est utilisé pour q’une classe
file hériter une classe mère?
A include
B extends
C implements
D inherit
Réponse
<?php
...
?>
}
2. Dans le code PHP donné ci-dessous, quelles sont les
propriétés?
<?php
class MaClass
public $var;
function test()
?>
A
function test()
B
class MaClass
C
public $var;
D
echo “Ceci est un exemple”;
Réponse
C
B
4. Quel mot clé permet aux membres de la classe (méthodes
et propriétés) d’être utilisés sans avoir à instancier une
nouvelle instance de la classe?
A protected
B final
C static
D private
Réponse
C
B
PHP 5 fournit une pléthore de nouvelles fonctionnalités.
Support robuste pour la programmation orientée objet.
<?php
class MaClass {
function name()
?>
C
La fonction class_exist() renvoie true ou false selon que la classe existe ou non dans le script en
cours d’exécution.
<?php
if (class_exists('MaClass')) {
?>
A, C, D
6. Quelle méthode magique est utilisée pour implémenter la
surcharge en PHP?
A __call
B __invoke
C __wakeup
D __unset
Réponse
D
Voici un exemple de chaînage de méthode en php:
$order->CreateOrder()->sendOrderEmail()->printOrder();
protected $member1;
protected $member2;
//....
}
A Il n’est pas déclaré
B Il est déclaré
C Il est déplacé
D Aucune de ces réponses n’est vraie.
Réponse
B
D
Vous déclarez une classe avec le mot-clé class et un nom de classe arbitraire. Les noms de classe
peuvent être toute combinaison de chiffres et de lettres, bien qu’ils ne doivent pas commencer
par un chiffre.
class B {}
class C extends A, B {}
A Le code est parfaitement correct
B Les classes ne peuvent pas être vides
C Classe C ne peut pas hériter à la fois A et B
D Les modificateurs public/privé sont absents dans les définitions de classe
Réponse
C
PHP ne supporte pas l’héritage multiple pour les classes.
C
Un objet est une instance de sa classe. Il est du type défini par la classe.
5. Il y a deux objets:
$house1 = new House();
A $house1 et $house2 sont les mêmes objets du même type générés à partir d’une
même classe.
B $house1 et $house2 sont des objets différents du même type générés à partir
d’une même classe.
C $house1 et $house2 sont les mêmes objets de types différents générés à partir
d’une même classe.
D $house1 et $house2 sont des objets différents de types différents générés à partir
d’une même classe.
Réponse
C
Exemple:
$house1->message = "Welcome";
10. Le code qui utilise une classe, une interface, une fonction
ou une méthode est souvent décrit comme le _______?
A code serveur
B code client
C code de l’objet
D code de classe
Réponse
B
Le code qui utilise une classe, une fonction ou une méthode est souvent décrit comme le client de
la classe, interface, fonction ou méthode
B
La déclaration d’une méthode ressemble à une déclaration d’une fonction. Le mot clé
« function » précède le nom d’une méthode, suivi d’une liste facultative des arguments. Voici un
exemple :
<?php
class MaClass
// déclaration de propriété
// déclaration de méthode
echo $this->var;
}
?>
A
En déclarant une méthode publique, vous vous assurez qu’elle peut être appelée depuis
l’extérieur.
<?php
$var = false;
if (is_bool($var))
else
?>
La sortie:
———————
class PageBlog
print $str;
$auteur->ecrire( $page );
?>
A QCM PHP, Nombre de page: 12, Simple description
B Simple description, QCM PHP, Nombre de page: 12,
C Nombre de page: 12, QCM PHP, Simple description
D Aucune de ces réponses n’est vraie.
Réponse
A
C
On utilise « self » pour faire référence à la classe actuel. On utilise « $this » pour faire référence
à l’objet actuel. Autrement dit, on utilise self ::$var pour les membres statiques, on utilise $this-
>var pour les membres non statiques. Voici un exemple:
<?php
class MaClasse {
private $nonStaticMember = 5;
function __construct() {
new MaClasse();
?>
class MaClasse
class AutreClasse
?>
A bool(true) bool(true)
B bool(false) bool(false)
C bool(true) bool(false)
D bool(false) bool(true)
Réponse
C
« instanceof » est utilisé pour déterminer si une variable PHP est un objet instancié d’une
certaine classe.
class MaClasseMere
{
?>
A bool(false) bool(false)
B bool(true) bool(true)
C bool(false) bool(true)
D bool(true) bool(false)
Réponse
B
« instanceof » peut également être utilisé pour déterminer si une variable est un objet instancié
d’une classe qui hérite d’une classe mére.
class MaClasse
?>
A bool(false)
B bool(true)
C error
D Aucune de ces réponses n’est vraie.
Réponse
B
Pour vérifier si un objet n’est pas une instance d’une classe, l’opérateur logique « NOT ‘!' » peut
être utilisé.
C
Vous devez utiliser des constantes lorsque la variable doit être disponible pour toutes les
instances d’une classe et lorsque la valeur de la variable doit être fixe et immuable.
interface MonInterface
{
}
?>
A bool(false) bool(false)
B bool(true) bool(true)
C bool(false) bool(true)
D bool(true) bool(false)
Réponse
B
« instanceof » peut également être utilisé pour déterminer si une variable est un objet instancié
d’une classe qui implémente une interface.
parent::__construct()
class MaClasse
private $name;
$this->name = $value;
class MaClass{}
A
Les classes définies comme abstraites ne peuvent pas être instanciées et toute classe contenant au
moins une méthode abstraite doit également être abstraite. Voici un exemple:
<?php
// méthodes abstraites
// méthode commune
?>
A
Une classe peut implémenter une interface en utilisant le mot clé « implements » dans sa
déclaration. Exemple:
<?php
class MaClasse
{
// Code à exécuter
?>
$var2 = $var1;
A En PHP 4: $var1 et $var2 sont deux objets distincts
B En PHP 5: $var1 et $var2 sont deux objets distincts
C En PHP 4: $var1 et $var2 font référence à un objet
D Aucune de ces réponses n’est vraie.
Réponse
A
class Book
$description = $this->getName();
return $description;
print $book;
?>
A Error
B Object Not Found
C Alchimiste, Nombre de pages: 255
D Alchimiste
Réponse
C
En implémentant la méthode __toString(), vous pouvez contrôler la manière dont vos objets se
représentent lorsqu’ils sont affichés. La méthode est invoquée automatiquement lorsque votre
objet est passé à « print » ou « echo » et que sa valeur de retour est substituée.
?>
A false true true
B true true false
C true false true
D true false false
Réponse
D
L’opérateur d’équivalence == renvoie true si les deux tableaux ont le même nombre d’éléments
avec les mêmes valeurs et clés, quel que soit leur ordre. L’opérateur d’identité ===, en revanche,
ne renvoie true que si le tableau contient les mêmes paires clé / valeur dans le même ordre.
<head>
<title>
</title>
</head>
<body>
<?php
?>
</body>
</html>
Laquelle des balises suivantes est utilisée dans le script php?
A Balise standard
B Balise ASP
C Balise de script
D Balise courte
Réponse
<?php?>
:est la balise PHP standard
qu’ils peuvent être convertis en un type de données commun dans lequel ils ont la même
L’opérateur (===): elle n’a la valeur true que si les opérandes sont du même type de données
L’opérateur (!=): La valeur est true si les deux opérandes ne sont pas identiques, quel que
L’opérateur (!==): La valeur est true si les deux opérandes ne sont pas du même type de
$a=2;
$b=3;
$c=4;
$d=6;
$e=($a*$b)+$c*$d/$a;
print($e);
?>
Quelle sera la sortie du code ci-dessus?
A 12
B 18
C 24
D6
Réponse
B
La sortie du code sera produite dans les étapes suivantes:
La valeur de a et b sera multipliée, c’est-à-dire ($a * $b) = 6.
La valeur de c et d sera multipliée, c’est-à-dire $c * $d = 24.
$x = false;
if($x = true)
print("True");
else
print("False");
?>
A False
B True
C Le script va lancer un message d’erreur.
D True false
Réponse
B
La seule expression légale dans une instruction « if » est une expression booléenne. Dans
l’exemple ci-dessus, la valeur « true » est affectée à la variable « x ». Donc le programme affiche
« True ».
C
La portée de variable décrit où la variable peut être utilisée dans le programme. Les trois
portées de variables pour PHP sont « global », « function » et « class ».
« function »: La portée de variable existe dans la fonction où la variable a été définie.
print("x = $x y = $y");
?>
Ax=2y=3
Bx=2y=2
Cx=2y=1
Dx=1y=3
Ex=1y=2
Fx=1y=1
Réponse
A, C, D, E
La première boucle « for » initialise la variable « x » avec la valeur 1 et exécute en continu le
bloc de code qui le suit jusqu’à ce que la valeur de « x » devienne 2.
var_dump((bool)5.8);
?>
A bool(false)
B1
C bool(true)
D0
Réponse
C
Tout nombre supérieur à zéro converti en booléen devient « true ». Donc, le code suivant
générera
bool(true)
.
$value = $value + 2;
$value = $value + 3;
updateTab($array);
print_r($array);
?>
A Array ( [0] => 5 [1] => 7 [2] => 9 )
B Array ( [0] => 2 [1] => 4 [2] => 6 )
C Array ( [0] => 1 [1] => 2 [2] => 3 )
D Array ( [0] => 3 [1] => 4 [2] => 8 )
Réponse
D
Les commentaires expliquent le fonctionnement du script:
<?php
updateTab($array);
print_r($array);
?>
?>
A Change les valeurs de $a et $b.
B Détermine si elles sont paires ou impaires.
C Détermine le plus grand commun diviseur entre eux.
D Boucles infini.
Réponse
C
Ceci est la condition ternaire de if. La condition est vraie alors appelle la fonction f() en passant
$b comme premier argument et modulo de $a et $b comme second argument, ceci continue
jusqu’à $b == 0 et renvoie la valeur de $a. Il détermine le plus grand commun diviseur entre $a
et $b.
?>
A8
B7
C 10
D Le script PHP retournera un message d’erreur.
Réponse
B
L’expression ((0.1 + 0.7) * 10) doit être évaluée à 8. Toutefois, la sortie de l’expression dans le
script est évaluée à 7 car le moteur PHP stocke la valeur de l’expression en interne sous la forme
7.999999 au lieu de 7. Lorsque la valeur fractionnelle est converti en un entier, le moteur PHP
tronque simplement la partie fractionnaire. Lorsque la valeur est convertie en int, PHP tronque
simplement la partie décimale, ce qui entraîne une erreur assez importante (12,5%, pour être
exact).
L’option B est incorrecte. Warning est une erreur récupérable qui indique une
erreur d’exécution, mais n’interrompt pas l’exécution du script.
L’option C est incorrecte. Notice est une indication qu’une condition d’erreur
s’est produite, mais ce n’est pas nécessairement significatif. Cela n’arrête pas
l’exécution du script.
A
L’opérateur backtick permet d’exécuter une commande shell et d’extraire sa sortie. Ainsi, $a va
stocker le contenu du répertoire de travail actuel.
while($a<10)
$a--;
print($a);
A 30
B 10
C0
D Le script va lancer un message d’erreur.
Réponse
A
L’instruction while exécute un bloc d’instructions lorsque la condition est vraie. L’instruction
while évalue l’expression qui renvoie une valeur booléenne. Si l’expression du bloc while est
évaluée à true, l’instruction while exécute les instructions du bloc while. L’instruction while
continue à exécuter le bloc jusqu’à ce que l’expression soit évaluée à false. Dans le code ci-
dessus, l’expression dans l’instruction while est évaluée à false et par conséquent, 30 est affiché
dans la sortie.
define('BAR', 5);
?>
A5
B 10
C 50
D BAR
Réponse
C
Dans cette question,
$array["BAR"] = 10
et
$array[$array[BAR]] = 5
, BAR est une constant avec la valeur 5, donc
$array[$array[5]] * $array["BAR"];
, sera évalué à 50.
switch(1) {
?>
A Le choix 1
B Le choix 2
C Le choix par defaut
D Il affichera toutes les trois lignes.
E Le script va lancer une erreur.
Réponse
D
Le script donné s’exécutera correctement et affichera les trois lignes en sortie. L’expression
« switch » a la valeur 1; cela correspond à la valeur littérale spécifiée dans chaque instruction
« case ». « Le choix 1 » a la valeur correspondante, mais comme il n’y a pas d’instruction break
après celle-ci, toutes les instructions sont exécutées.
7. Lequel des codes suivants peut être utilisé pour créer une
constante insensible à la casse?
A
<?php
define("STR","Hello World!",TRUE);
echo constant("str");
?>
B
<?php
define("STR","Hello World!");
echo constant("str");
?>
C
<?php
define("STR","Hello World!",FALSE);
echo constant("str");
?>
D
<?php
define("STR","Hello World!",'USECASE');
echo constant("str");
?>
Réponse
A
Pour définir la constante sensible à la casse, vous écrirez le code comme suit:
<?php
define("STR","Hello World!");
echo constant("STR");
?>
Pour définir la constante insensible à la casse, vous écrirez le code comme suit:
<?php
define("STR","Hello World!",TRUE);
echo constant("str");
?>
$x;
{
if($x==50)
continue;
print($x);
?>
A Une série de 1 à 100 sera affichée. Le nombre 50 ne sera pas affichée.
B Une série de 1 à 50 sera affichée.
C Une série de 51 à 100 sera affichée.
D Une série de 1 à 100 sera affichée.
Réponse
A
Dans le programme donné, l’instruction « continue » oblige le programme à passer à x++. La
valeur est incrémentée de un, 51 est donc affichée et 50 est ignorée.
$x = 20;
function f($y) {
$x = 30;
?>
A 20
B 60
C 120
D Erreur de syntaxe
Réponse
C
Dans cette question, les commentaires expliquent le code:
<?php
$x = 20;
function f($y) {
$x = 30;
?>
?>
A 123
B FALSE
C NULL
D TRUE
Réponse
B
123 et 0123 sont complètement différents, puisque PHP considère 0123 comme une valeur octale.
$x = 20;
$y = 10;
?>
A 10
B 20
C0
D Le script va lancer une erreur.
Réponse
B
C
APC signifie Alternative PHP cache. C’est un plugin de cache PHP. APC est un opcode libre et
open source. C’est un module PECL qui peut être chargé dans PHP.
$x=20%-8;
echo $x;
?>
A2
B Le script affichera un message d’erreur.
C -4
D4
Réponse
?>
A 1235FOO
B 1235
C Il affiche une erreur.
D0
Réponse
$a = 200;
$a = $a- + 1;
echo $a;
?>
A 200
B 201
C 199
D Il affiche une erreur.
Réponse
C
Le + est analysé comme un opérateur unaire.
<?php
$a = 200;
$a = $a- + 1;
$a = 200 - 1; // +1 = 1
$a = 199;
?>
Barème : bonne réponse 2 points, mauvaise réponse -0,5 point, je ne sais pas 0
point
<?php
$res = 2+3/4;
print $res;
?>
Qu'affiche le script ?
Je ne sais pas
A) 1.25
B) 2
C) 2.75
Barème : bonne réponse 2 points, mauvaise réponse -0,5 point, je ne sais pas 0
point
<?php
$res = 15;
$Res = 10;
$Res = $Res -7;
print $res;
?>
Qu'affiche le script ?
Je ne sais pas
A) 3
B) 8
C) 15
Barème : bonne réponse 2 points, mauvaise réponse -0,5 point, je ne sais pas 0
point
<?php
$a = 6;
$b = 15;
$c = $a;
$a = $b;
$b = $c;
print "$a $b";
?>
Qu'affiche le script ?
Je ne sais pas
A) 6 6
B) 6 15
C) 15 6
D) 15 15
<?php
$a = 1,5;
$b = 2,2;
$c = $a + $b;
print $c;
?>
Qu'affiche le script ?
Je ne sais pas
A) 3,7
B) 3.7
C) Le script génère une erreur.
Barème : bonne réponse 2 points, mauvaise réponse -1 point, je ne sais pas 0 point
<?php
$a = "3*7";
print $a;
?>
Qu'affiche le script ?
Je ne sais pas
A) 21
B) 3*7
<?php
$a = "4";
$b = "2";
$c = $a.$b;
print $c;
?>
Qu'affiche le script ?
Je ne sais pas
A) 8
B) 24
C) 42
Barème : bonne réponse 2 points, mauvaise réponse -0,5 point, je ne sais pas 0
point
<?php
$a = "Bon";
$b = "jour";
print $b.$a;
?>
Qu'affiche le script ?
Je ne sais pas
A) jourBon
B) Bonjour
C) $b.$a
Questions
Dans une table, les données sont rangées par ordre alphabétique
5 _ Quel sont les avantages d'une table par rapport à un fichier texte ?
On peut facilement en lire le contenu dans un editeur de texte (wordpad)
On peut relier les données d'une table avec les données d'une autre table
7 _ Comment voir les données renvoyées par la fonction 'mysql_query(select * from EMPLOYES)' ?
on peut imprimer directement le contenu des champs sélectionés
1
Qu'est-ce que PHP ?
C'est un langage de programmation compilé.
C'est un interpréteur permettant de créer n'importe quel logiciel.
C'est un langage de scripts permettant de créer des sites Web
dynamiques
C'est un langage interprété permettant de créer des applications Web
« Il ne faut surtout pas confondre entre un langage interprété et un langage de
programmation compilé.
PHP est un interpréteur Open source et il existe d'autres interpréteurs. »
2
Que signifie PHP ?
Page Helper Process
Programming Home Pages
PHP : Hypertext Preprocessor
PHP : Programming Hypertext Preprocessor
« Prendre connaissance de la notion d''acronyme récursif. »
3
Quel est l'usage le plus courant du PHP ?
Créer le design des pages Web
Générer le contenu des pages Web mis à jour systématiquement.
Créer des sites Web dynamiques
Créer des sites Web statiques
« Il faudrait se documenter sur la différence entre un site Web statique et un site
Web dynamique. »
4
PHP remplace-t-il HTML ?
Oui, PHP génère aussi du code HTML.
Non, HTML s'occupe de la mise en forme d'une page Web et PHP prend en
charge le contenu de la page.
Oui, PHP possède des fonctions permettant de remplacer HTML
Non, HTML permet de créer le contenu et PHP génère l'interface
graphique.
« Renseignez-vous sur la différence entre le langage HTML et PHP. »
5
Je veux créer une page Web contenant le titre suivant : "Ma première
page Web". Aurai-je besoin du PHP ?
Non, le HTML est suffisant.
Oui, il faudrait utiliser une fonction PHP permettant d'afficher une chaîne de
caractères.
Oui, puisque PHP permet de construire une page Web
Non, PHP est nécessaire lorsque le titre est dynamique.
« Il faudrait décider dès le départ si votre page Web est statique ou dynamique
pour que vous puissiez confirmer ou infirmer la nécessité d'utiliser PHP. »
6
Je veux créer une page Web affichant les nom et prénoms des
utilisateurs qui sont stockés dans une base de données MySQL. Aurai-je
besoin du PHP ?
Oui, il s'agit d'une page dynamique puisqu'elle affiche le contenu d'une
base de données.
Non, il s'agit d'un affichage et HTML peut le faire.
Oui, HTML ne peut pas interagir avec une base de données.
Oui, puisque les données affichées peuvent changer en fonction du
contenu de la base de données.
« Il faudrait se documenter sur les bases de données notamment MySQL. »
7
Comment appelle-t-on un programme écrit en PHP ?
Fichier PHP
Code HTLM
Script PHP
Programme PHP
« On utilise le plus souvent le terme "Script PHP" pour désigner tout programme
intégrant du code PHP. »
8 Bonne réponse
Quelle est l'extension des fichiers PHP ?
Xml
Html
Ph
Php
« Si vous voulez intégrer du code PHP dans un fichier html pour insérer des
données variables. il faudrait remplacer .html du fichier par .php et intégrer le
code php dans le fichier et le délimiter par les deux balises »
9
Que faut-il installer pour exécuter un script PHP?
Il faudrait avoir uniquement un navigateur pour afficher le contenu de la
page Web générée par PHP
Il faudrait installer un serveur Web contenant un interpréteur PHP qui va
traduire le code PHP.
Il faudrait installer un SGBD si le script PHP interagit avec une base de
données.
Nous n'aurons pas besoin du navigateur puisque le script PHP s'exécute au
niveau serveur et non pas au niveau client
« Un site web dynamique fait en PHP est avant tout une application
client/serveur. Les requêtes du client se font à travers un navigateur. Le serveur
Web (comme Apache) s'occupe de l'exécution du code PHP à l'aide de l'interpréteur
PHP qui est installé dans ce serveur. Si les données évoquées dans le script PHP
sont issues d'une base de données il faudrait installer le SGBD comme MySQL. »
10
J'ai créé un script PHP que j'ai nommé FirstPHPScript.php
J'ai ouvert le fichier à partir de mon navigateur pour voir le résultat.
Mais, il m'a ré-affiché le code PHPque j'ai écrit. Où réside l'erreur ?
Le script PHP est appelé au niveau du navigateur
PHP s'exécute au niveau du serveur Web.
L'erreur est plutot syntaxique.
Il se peut que les éléments logiciels nécessaires ne sont pas disponibles.
« L'erreur réside dans le fait que le script PHP est évoqué localement. Or,
contrairement à HTML qui s'execute au niveau client (Un navigateur), PHP,
s'exécute au niveau du serveur Web possédant un interpréteur PHP. »
Questions
1 _ Quel est le symbole à utiliser pour séparer les variables passées par un url ?
Un point virgule ;
&
2 _ Comment sont récupérées dans la page d'arrivée les variables passées par l'URL ?
$_GET['nom_de_variable']
$_GET[$nom_de_variable]
$_GET('nom_de_variable)
Avec la methode GET les données sont passées par l'URL, et avec POST en interne
4 _ Pour donner à l'internaute la possibilité de choisir une seule case à cocher parmi plusieurs on utilise ?
Les boutons radio
Dans la variable dont le nom est identifié dans HTML par le mot-clé 'name='
Dans la variable dont le nom est identifié dans HTML par le mot-clé 'value='
6 _ Quelle est la particularité du code HTML pour une liste à choix multiple ?
Le nom de la variable à passer doit être en majuscules
8 _ Quel mot clé particulier est utilisé en HTML pour les liste de choix ?
CHOICE
SELECTED
SELECT
$_SERVER[PHP_SELF]
$_SERVER[$PHP_SELF]
10 _ Comment conserver les retour à la ligne dans une boite d edialogue ? ?
utiliser la fonction nl2br() dans la page emetrice
2. Sachant que l'on veut retrouver une portion de texte sous la forme crochet
gauche, 2 à 6 caractères alphanumériques ou souligné, crochet droit avec
preg_match, quelle expression utiliser :
o "/\[[A-Za-z0-9]{2,6}\]/"
o '`\[\w{2,6}\]`'
o '#\[[A-Z0-9_]{2,6}\]#iA'
o "\`\[\w{2,6}\]\`"
o A et B
o B et D
3. Soit query() un fonction faisant une requête SQL et escape() une fonction
effectuant un échappement des caractères potentiellement dangereux.
Quelle requête est sécurisée de manière optimale ?
o query('SELECT * FROM `table` WHERE champ1='.$a.' AND
champ2='.$b);
o query('SELECT * FROM `table` WHERE champ1='.escape($a).' AND
champ2='.escape($b));
o query(sprintf('SELECT * FROM `table` WHERE champ1="%s" AND
champ2="%d"', escape($a), escape($b));
o query(escape('SELECT * FROM `table` WHERE champ1='.$a.' AND
champ2='.$b));
o query(sprintf('SELECT * FROM `table` WHERE champ1="%s" AND
champ2="%d"', escape($a), $b);
Le header HTTP est bien envoyé mais il n'y a aucun ajout de contenu par le
serveur, ce qui ne donne aucune indication au navigateur hormis le code
retour HTTP. Celui-ci est donc libre de ne rien afficher (par exemple Firefox) ou
de remplacer le tout par une page 404 par défaut qui oriente l'internaute (par
exemple Internet Explorer).
o NULL
o Une erreur PHP.
o bool(true)
o bool(false)
o ressource(#)
B, unset() n'a aucune valeur de retour depuis PHP4, tenter d'utiliser le retour
provoque donc une erreur d'analyse.
9. PHP possède deux analyseurs XML, quelle est leur principale différence ?
o Il n'y a qu'un analyseur XML
o L'un commence par la fin du fichier, l'autre par le début
o L'un ignore les erreurs, l'autre arrête l'analyse
o L'un nécessite une DTD pour travailler, l'autre pas
o L'un charge toute la chaine en mémoire, l'autre travail sur un flux
E, il est possible d'utiliser simpleXML ou les fonctions xml. SimpleXML charge
l'intégralité de la chaine en mémoire et construit l'arborescence. SAX (le
moteur utilisé par les fonctions xml), lui lit la chaine par petits morceaux (flux).
Une classe fille ne pourra pas avoir plusieurs classes mères. Toutes les autres
affirmations sont justes (le type "string" deviendra "unicode").
14. Quelle fonction permet d'envoyer des en-têtes HTTP au navigateur avant le
contenu de la page ?
o parse_url()
o http_post() (faux)
o header() (correct)
16. Quelle fonction permet de lire le résultat d'une ressources MySQL renvoyée
par mysql_query() ?
o mysql_fetch_row() (correct)
o mysql_data_seek() (faux)
o mysql_affected_rows()
- La fonction ksort() renvoie un booléen (true ou false selon que l'action ait été
effectuée ou non). Cette ligne remplacerait donc le contenu de $tableau par
TRUE ou FALSE selon le contexte.
- La fonction ksort() trie un tableau suivant les clés.
- Comme ksort(), rsort() renvoie un booléen. Cette ligne remplacerait donc le
contenu de $tableau par TRUE ou FALSE.
- La fonction rsort() trie un tableau (passé en référence) en ordre inverse et
renvoie une valeur booléenne (true) en cas de succès.
- La fonction strpos() trouve la position d'un caractère dans une chaîne. Ici,
l'expression *@*.* est recherchée.
- Dans la deuxième proposition, les arguments sont inversés bien que
l'expression de vérification puisse être correcte.
- La fonction preg_match() associée au motif cité permet de s'assurer que la
variable $email correspond bien à une adresse standard.
22. Par défaut, dans quel ordre de priorité sont affectées les variables envoyées
par HTTP ?
o get, cookie, post
o post, get, cookie
o get, post, cookie
o post,cookie, get
L'ordre de priorité est GET, POST, COOKIE (intitulé GPC comme toutes les
fonctions y faisant référence).
Cet ordre peut être modifié en redéfinissant la variables_order dans le fichier
de configuration php.ini
- public static void() n'est pas une fonction à proprement parler en PHP.
- __construct() est le nom de la fonction à écrire pour implémenter un
constructeur dans l'objet en PHP5.
- En PHP3/4, le constructeur est une fonction qui a le même nom que la classe.
En PHP5, on utilise la fonction __construct().
Si __construct() est absente, PHP5 acceptera une fonction portant le nom de
la classe comme constructeur.
24. Comment mémorise-t-on de façon pratique une variable d'un script à l'autre
sur un serveur web ?
o Grâce à serialize()
o En utilisant $_SESSION
o Au moyen de register_globals()
27. Quel mot clé permet de conserver la valeur d'une variable locale dans une
même fonction appelée plusieurs fois de suite ?
o global
o const
o static
28. Quelle fonction permet d'obtenir les informations suivantes à propos d'un
fichier : date de dernier accès, date de modification, date de création ?
o stat()
o filemtime()
o filegroup()
29. Quelle méthode permet d'attraper par défaut les exceptions lancées par un
script, à l'aide d'une fonction propre function gestion_exception($e) { ...
}?
o $handler->setdefault('gestion_exception');
o set_exception_handler('gestion_exception');
o exception_handler($e) = gestion_exception();
30. $a = M_PI;
$b = &$a;
Sachant qu'au cours de l'éxécution du script, $a = 10, que vaudra pow($b,2)
* sqrt(3)/2 + $a; ?
o pi² sqrt(3)/2 + 10
o pi² sqrt(3)/2 + pi
o Quel est le tordu qui a pu pondre un truc pareil ?
o 50 sqrt(3) + 10
$b = 10
pow($b,2) = 100
pow($b,2) * sqrt(3)/2 + $a = 100 * sqrt(3)/2 + 10
pow($b,2) * sqrt(3)/2 + $a = 50 sqrt(3) + 10
2. Sachant que l'on veut retrouver une portion de texte sous la forme crochet
gauche, 2 à 6 caractères alphanumériques ou souligné, crochet droit avec
preg_match, quelle expression utiliser :
o "/\[[A-Za-z0-9]{2,6}\]/"
o '`\[\w{2,6}\]`'
o '#\[[A-Z0-9_]{2,6}\]#iA'
o "\`\[\w{2,6}\]\`"
o A et B
o B et D
3. Soit query() un fonction faisant une requête SQL et escape() une fonction
effectuant un échappement des caractères potentiellement dangereux.
Quelle requête est sécurisée de manière optimale ?
o query('SELECT * FROM `table` WHERE champ1='.$a.' AND
champ2='.$b);
o query('SELECT * FROM `table` WHERE champ1='.escape($a).' AND
champ2='.escape($b));
o query(sprintf('SELECT * FROM `table` WHERE champ1="%s" AND
champ2="%d"', escape($a), escape($b));
o query(escape('SELECT * FROM `table` WHERE champ1='.$a.' AND
champ2='.$b));
o query(sprintf('SELECT * FROM `table` WHERE champ1="%s" AND
champ2="%d"', escape($a), $b);
Le header HTTP est bien envoyé mais il n'y a aucun ajout de contenu par le
serveur, ce qui ne donne aucune indication au navigateur hormis le code
retour HTTP. Celui-ci est donc libre de ne rien afficher (par exemple Firefox) ou
de remplacer le tout par une page 404 par défaut qui oriente l'internaute (par
exemple Internet Explorer).
o NULL
o Une erreur PHP.
o bool(true)
o bool(false)
o ressource(#)
B, unset() n'a aucune valeur de retour depuis PHP4, tenter d'utiliser le retour
provoque donc une erreur d'analyse.
9. PHP possède deux analyseurs XML, quelle est leur principale différence ?
o Il n'y a qu'un analyseur XML
o L'un commence par la fin du fichier, l'autre par le début
o L'un ignore les erreurs, l'autre arrête l'analyse
o L'un nécessite une DTD pour travailler, l'autre pas
o L'un charge toute la chaine en mémoire, l'autre travail sur un flux
E, il est possible d'utiliser simpleXML ou les fonctions xml. SimpleXML charge
l'intégralité de la chaine en mémoire et construit l'arborescence. SAX (le
moteur utilisé par les fonctions xml), lui lit la chaine par petits morceaux (flux).
Une classe fille ne pourra pas avoir plusieurs classes mères. Toutes les autres
affirmations sont justes (le type "string" deviendra "unicode").
2019/2021
HTML – Rappels
1. Web et Html:
Qu'est ce que l'HTML?
HTML est le langage de balisage hypertexte utilisé dans le Web (HyperText Markup Language). Ce n'est pas
un langage de programmation proprement dit.
Ce sont "simplement" des balises pour mettre en forme (avec des liens, en tableau, etc...) du texte et des
images. Pour avoir une idée de l'aspect d'une page écrite en HTML, cliquez sur "Affichage" dans votre
navigateur, puis sélectionnez "page source".
Qu'est ce qu'une balise?
Une balise est une "instruction" comprise entre crochets < > qui possède un nom et parfois des
attributs.
<br> est, par exemple, la balise utilisée pour spécifier qu'il faut passer à la ligne.
La plupart des balises doivent être ouvertes puis refermées. On retrouvera donc souvent une balise
de début et une balise de fin.
La balise de fin porte le même nom que la balise de début mais est en plus précédée du signe /.
Nous aurons donc: (ouverture) <nom_de_balise> et (fermeture) </nom_de_balise>.
Par exemple: <b>mon texte en gras (bold)</b>.
Le nom de la balise (contenu entre les crochets) n'est pas sensible à la casse: il peut être écrit
indifféremment en majuscule, en minuscule ou en un mélange des 2.
L'attribut d'une balise est défini comme suit: nom_attribut="valeur"
Par exemple, la balise utilisée pour faire un lien a pour nom "a", et pour nom d'attribut "href". Ainsi,
<a href="http://www.google.fr">Google</a> permet de faire un lien vers la page principale du site
de Google. Dans ce cas, la valeur de l'attribut "href" est donc "http://www.google.fr".
2. Premiers outils
Vous avez besoin de:
d'un éditeur de texte tout simple comme par exemple le Bloc-notes ou Notepad de Windows ou
tout autre équivalent dans votre système d'exploitation.
un browser (navigateur internet)
A. Ouchatti1 1
<TITLE> Ceci est le début du titre de la page.
</TITLE> Ceci est la fin du titre de la page.
<BODY> Ceci est le début du document proprement dit.
</ BODY> Ceci est la fin du document proprement dit.
Remarques
Vous aurez remarqué qu'à chaque balise de début d'une action, soit <...>, correspond (en toute logique) une balise de fin
d'une action </...>.
Vous noterez aussi que les balises ne sont pas "case sensitive". Il est donc équivalent d'écrire <HTML>, <html>, <Html>, etc.
Exemple
1.- Ouvrir l'éditeur de texte
A. Ouchatti2 2
<HTML>
<HEAD><TITLE></TITLE></HEAD>
<BODY>texte simple<BR>
<B>texte en gras</B><BR>
<STRONG>texte en gras</STRONG><BR>
<I>texte en italique</I><BR>
<EM>texte en italique</EM><BR>
<B><I>texte en gras et en italique</I></B><BR>
<FONT SIZE=5>texte</FONT>
<FONT COLOR="#0000FF">en bleu</FONT>
<!--C'est fini-->
</BODY>
</HTML>
2.- - Ouvrir le browser
Remarques & commentaires :
Le texte tout simple s'écrit sans balises. Il sera repris par le browser avec la police et taille de
caractères choisies dans sa configuration par défaut.
Le browser affiche le texte qu'on lui "dicte" en passant à la ligne lorsque celui-ci atteint le bord de la
fenêtre. Pour le forcer à passer outre à cette règle de conduite et à faire un saut à la ligne comme vous
le souhaitez, il faut une instruction particulière. C'est la balise <BR>. Celle-ci représente une action
ponctuelle et n'a donc pas besoin de balise de fin.
Le même browser ne tient compte que d'un seul espace entre les mots. Ainsi pour lui
<FONT SIZE=5>texte</FONT> <FONT COLOR="#0000FF">en bleu</FONT> est équivalent à
<FONT SIZE=5>texte</FONT><FONT COLOR="#0000FF">en bleu</FONT>
Il n'est pas rare d'utiliser plusieurs balises pour un même élément de texte. Il faut veiller à bien les
imbriquer. Ainsi <B><I>...</I></B> est correct et <B><I>...</B></I> risque de créer des ennuis.
La taille dans <FONT SIZE=?> peut être indiquée de deux façons :
avec un nombre de 1 à 7. La valeur par défaut étant 3.
de façon relative par rapport à la valeur par défaut (ici 0). Soit -3 -2 -1 0 +1 +2 +3.
Les balises <I> et <EM>, <B> et <STRONG> ne sont pas totalement équivalentes.
Voici les codes de quelques couleurs basiques.
Bleu #0000FF Vert #00FF00
Blanc #FFFFFF Violet #8000FF
Rouge #FF0000 Jaune #FFFF00
Gris clair #C0C0C0 Noir #000000
5. Titres et listes
Tout document d'une certaine consistance se doit de présenter, par exemple dans la table des matières, les
différents niveaux de son exposé. Html a disposé dès son origine d'outils spécialement conçus à cet effet.
En-têtes [Heading] <Hn></Hn> avec n=1 à 6 Afficher une en-tête de niveau n et sauter une ligne
Liste non-ordonnée [Bullet list] <UL></UL> Afficher le texte sous forme d'une liste non ordonnée.
Liste ordonnée [Numbered list] <OL></OL> Afficher le texte sous forme d'une liste ordonnée.
Elément de liste [List items] <LI> Voici un élément de la liste
Paragraphe [Paragraph] <P></P> Saut de ligne, insérer une ligne vierge et commencer un paragraphe
A. Ouchatti3 3
Remarques & commentaires :
1. é est l'un de ces caractères spéciaux utilisés pour représenter le é. Les éditeurs Html vous
déchargeront de cette corvée.
2. Les paragraphes et les en-têtes peuvent s'aligner à gauche, au centre ou à droite.
<H1 align=left></H1>
<P align=left></P>
<H1 align=center></H1>
<P align=center></P>
<H1 align=right></H1>
<P align=right></P>
3. Les listes peuvent s'imbriquer:
<H4>Les 12 mois</H4>
<UL><LI>Les mois du printemps
<OL><LI>avril
</OL></UL>
6. Liens
Html (Hyper Text Markup Language) est un langage hypertexte (et hypergraphique) qui vous permet en
cliquant sur un mot, généralement souligné (ou une image) de vous transporter;
vers un autre endroit du document.
vers un autre fichier Html situé sur l’ordinateur.
vers un autre ordinateur situé sur le Web.
Ce système d'hypertexte vous est familier car il est également utilisé par les fichiers d'aide de Windows. Ce
sont ces liens qui vous permettent de surfer de page en page et qui constituent l'essence des documents
Html.
La syntaxe de ces liens entre plusieurs pages, est simple: <A HREF="URL ou adresse">...</A>
Lien externe
Tout ordinateur situé sur le réseau Internet possède une adresse ou une URL (Universal Ressource
Locator). Html permet d'accéder à toutes les machines et toutes les ressources du Net.
Ce sont les adresses du type : http://serveur/chemin.../fichier, ftp://serveur/chemin.../fichier
mailto:utilisateur@hôte
Lien local
L'organisation classique d'un site Web consiste à regrouper l'ensemble des éléments de celui-ci (fichiers
html, images, ...) dans un même répertoire. Ceci permet de "transporter" aisément le site pour sur un
autre ordinateur ou le charger sur un serveur.
7. Tableaux
En Html, les tableaux servent non seulement à aligner des chiffres mais surtout à placer des éléments à
l'emplacement souhaité. L'usage des tableaux est donc très fréquent.
Un tableau est composé de lignes et de colonnes qui forment les cellules du tableau. Les balises de base
sont:
Définition du tableau [Table] <TABLE></TABLE> Début et fin de tableau
Définition d'une ligne [Table Row] <TR></TR> Début et fin de ligne
Définition d'une cellule [Table Data] <TD></TD> Début et fin de cellule
Exemples
Un tableau à deux lignes et deux colonnes, et donc à quatre cellules se représente comme suit :
A. Ouchatti4 4
<TABLE>
<TR><TD>1</TD><TD>2</TD></TR>
<TR><TD>3</TD><TD>4</TD></TR>
</TABLE>
A. Ouchatti5 5
Exercice
Donnez le code HTML permettant de présenter le contenu d’une page pour les cas suivants
a-.
b-.
c-.
d-.
8. Frames
Pour diviser l'écran en plusieurs fenêtres, les balises sont peu nombreuses :
Zone avec des fenêtres
<FRAMESET> Début de zone avec des fenêtres
</FRAMESET> Fin de zone avec des fenêtres
Agencement des fenêtres
<FRAMESET ROWS="..."> Fenêtres horizontales
<FRAMESET COLS="..."> Fenêtres verticales
Exemples:
<HTML>
<HEAD></HEAD>
<FRAMESET ROWS="30%,70%">
<FRAME>
<FRAME>
</FRAMESET>
</HTML>
A. Ouchatti6 6
On construit 3 fichiers Html élémentaires que l'on place dans le même répertoire que le fichier de frames :
A.htm B.htm C.htm
<HTML><BODY> <HTML><BODY> <HTML><BODY>
<H4>A</H4> <H1>B</H1> <H1>C</H1>
</BODY></HTML> </BODY></HTML> </BODY></HTML>
9. Formulaires
Un formulaire sert à récupérer des données que l’utilisateur va entrer et les envoyer au serveur pour un traitement
(en PHP par exemple). La Balise principale du formulaire est :
• Deux méthodes :
method="get" : limitée à 255 caractères, informations passées dans la barre d’adresse
method="post" : envoie les données dans le corps de la requête sans passer par la barre d’adresse, c’est la
méthode la plus utilisée
• Action : l’adresse du fichier ou programme qui va traiter les données
Les éléments de formulaires HTML
Elément Définition
form Définit un formulaire
input Définit un champ de données pour l’utilisateur
label Définit une légende pour un élément input
textarea Définit un champ de texte long
select Définit une liste de choix
optgroup Définit un groupe d’options dans une liste
option Définit une option dans une liste
fieldset Permet de regrouper les éléments d’un formulaire en différentes parties
legend Ajoute une légende à un élément fieldset
Exemple :
<html>
<head>
<title>Un exemple simple de formulaire</title>
</head>
<body>
<H1>Exemple simple de formulaire utilisant l'interface CGI</H1>
A. Ouchatti7 7
<P>
Ceci est un formulaire simple qui illustre l'utilisation de
la bibliothèque de fonctions CGI permettant de traiter
les informations saisies dans les zones de dialogue.
</P>
<HR>
<form method="post" action="formulaire-simple.cgi">
<H2>Questionnaire</H2>
Quel est votre prénom ? <input name="prenom">
<P>
Quel est votre nom ? <input name="nom">
<P>
Quelle est votre couleur favorite ?
<select name="couleur">
<option selected>blanc
<option>jaune
<option>orange
<option>rouge
<option>vert
<option>bleu
<option>violet
<option>noir
</select>
<P>
Aimez vous l'informatique ?
<input type="radio" name="choix" value="oui" checked> Oui ou
<input type="radio" name="choix" value="non"> Non
<P>
Veuillez expliquer brièvement ci-dessous le choix que vous venez de faire :
<input name="message" size=60,5>
<P>
Cliquez sur <input type="submit" value="Valider"> pour soumettre votre requête.,
sinon <input type="reset" value="Annuler">
</form>
</body>
</html>
A. Ouchatti8 8
10. Liste complète des balises HTML5
Balise Description
<!– … –> Définit un commentaire
<!DOCTYPE> Définit le type du document
<a> Définit un lien
<abbr> Définit une abréviation
<address> Définit une adresse
<area> Définit une zone à l’intérieur d’une image
<article> NOUVEAU Définit un article
<aside> NOUVEAU Définit une partie latérale au contenu
<audio> NOUVEAU Définit un fichier audio
<b> Texte en gras
<base> Définit une URL de base pour tous les liens de la page
<bdo> Définit la direction du texte
<blockquote> Définit une longue citation
<body> Définit le corps de la page
<br> Saut de ligne
<button> Définit un bouton cliquable
<canvas> NOUVEAU Définit un graphique
<caption> Légende du tableau
<cite> Définit une citation
<code> Mise en forme d’un texte en code informatique
<col> Définit une colonne d’un tableau
<colgroup> Définit un groupe de colonne pour un tableau
<command> NOUVEAU Définit un bouton de commande
<datalist> NOUVEAU Définit une liste d’options
<dd> Définition d’un terme
<del> Définit un texte supprimé
<details> NOUVEAU Définit les détails d’un élément
<dfn> Définition
<div> Définit un calque ou une section
<dl> Liste de définition
<dt> Définition d’un terme
<em> Mise en exergue d’un texte – italique
<embed> NOUVEAU Définit un contenu extérieur (audio, vidéo …)
<fieldset> Regroupe plusieurs éléments d’un formulaire
<figcaption> NOUVEAU Légende d’un groupe d’élément multimédia
<figure> NOUVEAU Définit un groupe d’élément multimédia
<footer> NOUVEAU Définit le bas d’un section ou d’une page
<form> Définit un formulaire
<h1> to <h6> Définit un titre par degré importance de 1 à 6
<head> Définit l’en-tête d’un document
<header> NOUVEAU Définit le haut d’une section ou d’une page
<hgroup> NOUVEAU Regroupe les informations du haut d’une page ou section
<hr> Barre horizontale
<html> Définit un document html
<i> Texte en italique
A. Ouchatti9 9
<iframe> Introduit un page html dans une frame
<img> Définit une image
<input> Définit un champ
<ins> Définit un texte insérer
<keygen> NOUVEAU Générateur de clé pour un formulaire
<kbd> Raccourcis ou touche du clavier
<label> Légende d’un groupe d’élément de formulaire
<legend> Titre d’un groupe d’élément d’un formulaire
<li> Élément d’une liste
<link> Définit les relations entre les documents
<map> Définit une carte
<mark> NOUVEAU Mise en valeur d’un mot ou d’un texte – Texte marqué
<math> NOUVEAU Définit une formule mathématique
<menu> Définit un menu en liste
<meta> Définit des informations relatives au document
<meter> NOUVEAU Définit une unité de mesure
<nav> NOUVEAU Définit un groupe de liens de navigation
<noscript> Définit une alternative au script non supporté
<object> Définit un objet du contenu extérieur multimédia
<ol> Définit une liste ordonné
<optgroup> Regroupe d’une liste d »option dans un formulaire
<option> Option d’une liste dans un formulaire
<output> NOUVEAU Définit un type de sortie
<p> Définit un paragraphe
<param> Définit les paramètres d’un objet
<pre> Texte pré-formaté
<progress> NOUVEAU Définit une progression
<q> Définit une courte citation
<rp> NOUVEAU Annotation ruby si le script n’est pas supporté
<rt> NOUVEAU Annotation ruby d’explication
<ruby> NOUVEAU Définit une annotation en ruby
<samp> Définit un échantillon de code
<script> Définit un script
<section> NOUVEAU Définit une section
<select> Définit une liste sélectionnable
<small> Minimise l’importance d’un texte
<source> NOUVEAU Définit la source d’un contenu multimédia
<span> Définit une section de type inline
<strong> Mise en exergue d’un texte – Texte en Gras
<style> Définit un style CSS
<sub> Mise en indice d’un texte
<summary> NOUVEAU Définit l’en-tête des détails d’un document ou section
<sup> Mise en exposant d’un texte
<svg> NOUVEAU Définit une image vectorielle
<table> Définit un tableau
<tbody> Définit le corps d’un tableau
<td> Définit une cellule d’un tableau
A. Ouchatti10 10
<textarea> Définit une zone de texte
<tfoot> Définit le bas d’un tableau
<th> Définit une cellule d’en-tête d’un tableau
<thead> Définit le haut d’un tableau
<time> NOUVEAU Définit une unité de temps
<title> Définit le titre d’un document
<tr> Définit une ligne de tableau
<track> NOUVEAU Définit une unité de temps pour les éléments <audio> et <video>.
<ul> Définit une liste non-ordonné
<var> Définit une variable
<video> NOUVEAU Définit une vidéo
<wbr> NOUVEAU Définit un possible retour à la ligne
A. Ouchatti11 11
Systèmes
d’Information 2
(Bases de Données – SGBD)
Abderrahmane Ouchatti
Prof Agrégé de Génie Electrique
2020/2021
Bases de Données : SGBD relationnels
Plan
Introduction
Méthode de modélisation des données
Définitions
Modèle conceptuel des données (MCD)
Modèle logique des données (MLD)
Modèle physique des données (MPD)
Tables
Définition
champs d'une table
Clé primaire
Relations entre tables - clé étrangère
Index
Requêtes
Définition
2
Introduction au langage SQL
Bases de Données : SGBD relationnels
Introduction
3
Bases de Données : SGBD relationnels
Introduction
Représentation informatique des données
Les données d'un système d'information peuvent être stockées et
manipulées à l'aide d'un outil informatique spécialisé dans ce domaine.
Les Systèmes de Gestion de Bases de Données (SGBD) constituent le type
de logiciel le mieux adapté pour implémenter les systèmes d'information.
Exemples de SGBD:
4
Bases de Données : SGBD relationnels
Méthode de modélisation des données
5
Bases de Données : SGBD relationnels
Méthode de modélisation des données
3 niveaux de conception essentiels:
1. Le niveau conceptuel, qui se base directement sur l'analyse, décrit
l'ensemble des données du système d'information, sans tenir compte de
l'implémentation informatique de ces données.
Modèle conceptuel des données (MCD)
2. Le niveau logique, qui se base sur le modèle conceptuel des données,
prend en considération l'implémentation du système d'information par
un SGBD. Ce niveau introduit la notion des tables logiques, et constitue
donc le premier pas vers les tables des SGBD. Ce niveau est représenté
par le:
Modèle logique des données (MLD)
3. Le niveau physique, qui se base sur le modèle logique des données,
contient finalement les tables définies à l’aide d’un SGBD spécifique (p.ex.
MS Access, MySQL, Oracle …). Ce niveau est représenté par le:
Modèle physique des données (MPD) 6
Bases de Données : SGBD relationnels
Abstraction des données
8
Bases de Données : SGBD relationnels
Étapes pour traduire un système d'information en une base de données
9
Bases de Données : SGBD relationnels
Modèle conceptuel des données (MCD)
Le formalisme utilisé dans ce modèle est celui du langage de
modélisation UML (Unified Modeling Language).
A l'aide de ce langage nous pouvons créer un diagramme de classes
qui se base autour de 3 concepts principaux:
les classes,
les associations et,
les attributs.
10
Bases de Données : SGBD relationnels
Modèle conceptuel des données (MCD) - Notion d'identifiant
Afin de pouvoir distinguer les différents objets d'une même
classe, la classe doit être dotée d'un identifiant.
L'identifiant est composé d'un ou de plusieurs attributs de
la classe. Chaque objet d’une classe doit avoir une valeur
différente pour l’identifiant:
3 possibilités de choix pour l'identifiant d'une classe :
1. Un attribut naturel
Exemple: Le nom d'un pays pour une classe Pays
2. Un attribut artificiel qui est inventé par le créateur du MCD
Exemple: Le numéro d'un client pour une classe Client
3. Un identifiant composé de plusieurs attributs naturels
Exemple: Le nom et la localité pour une classe Entreprise
11
Bases de Données : SGBD relationnels
Modèle conceptuel des données (MCD) - Multiplicités d'une association
13
Bases de Données : SGBD relationnels
Modèle conceptuel des données (MCD) - Multiplicités d'une association
Exemple :
Exemple :
17
Bases de Données : SGBD relationnels
Modèle physique des données (MPD)
Définition
Le modèle physique des données (MPD) est la traduction du
modèle logique des données (MLD) dans une structure de données
spécifique au système de gestion de bases de données (SGBD)
utilisé.
Le MPD est donc représenté par des tables définies au niveau du
système de gestion de bases de données.
Passage du MLD au MPD
Le passage MLD MPD se fait par les étapes suivantes:
Implémentation physique de chaque table du MLD dans le SGBD
utilisé.
Pour chaque table, indiquer au SGBD quel(s) champ(s)
constitue(nt) la clé primaire.
Pour chaque table, indiquer au SGBD la (les) clé(s) étrangère(s),
et la (les) clé(s) primaire(s) correspondante(s).
18
Bases de Données : SGBD relationnels
Tables
Type de champs d'une table
Lors de la création d'une table, nous devons indiquer au SGBD, pour chaque
champ:
1. Le nom du champ, qui doit être unique dans la table
2. Le type de données du champ
19
Bases de Données : SGBD relationnels
Tables
Clé primaire
La clé primaire, constituée d'un
ou de plusieurs champs, nous
permet d'identifier de manière
unique chaque enregistrement
d'une table.
Relations entre tables - clé étrangère
Une base de données bien conçue est rarement composée d'une seule
table, mais d'un ensemble de tables, entre lesquelles il existe certaines
relations (voir Méthode de modélisation de données).
Clé étrangère
Un champ qui, dans une table, fait référence à la clé primaire d'une autre
table est appelé clé étrangère (foreign key, foreign identifier). Ainsi sont
20
définies les relations entre les tables.
Bases de Données : SGBD relationnels
Requêtes (queries)
Définition
Les requêtes servent à répondre aux questions basées sur le contenu d'une
ou de plusieurs tables.
Types de requêtes
Il existe 4 types de requêtes:
1. Requêtes de sélection.
2. Requêtes d'insertion.
3. Requêtes de modification.
4. Requêtes de suppression.
Langage SQL
Le langage SQL (Structured Query Language) est un standard
international, en ce qui concerne les langages de manipulation des BD. SQL
est connu par tous les SGBDR. Il faut cependant mentionner que, malgré la
présence de standards internationaux tels que SQL-86, SQL-89, SQL-92
(SQL2) ou SQL3 chaque SGBD sur le marché utilise un peu son propre
dialecte du langage SQL. 21
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base
Nous distinguons les 4 types de requêtes suivants.
1. Requêtes de sélection
2. Requêtes d'insertion
4. Requêtes de suppression
22
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base
= égal
WHERE id = 2
<> différent
WHERE nom <> ‘Buard’
AND
WHERE annee_insc < 2010 AND id<5
OR
WHERE annee_insc < 2010 OR id<5
FROM Emprunteur
WHERE nom = 'Buard'
AND NOT annee_insc = '2019' ;
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base – Expressions logiques
Combinaisons:
WHERE
( ensoleillement > 80 AND pluviosité < 200 )
OR température > 30
WHERE
ensoleillement > 80
AND ( pluviosité < 200 OR température > 30 )
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base – Appartenance à un ensemble : IN
Équivalent à:
Équivalent à:
Équivalent à:
NOT BETWEEN
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base – Conditions partielles (joker)
% : un ou plusieurs caractères
WHERE nom LIKE ‘%uard’
_ : exactement un caractère
WHERE nom LIKE ‘B_ard’
NOT LIKE
Bases de Données : SGBD relationnels
Langage SQL – Syntaxe de base – Valeurs calculées
Principe :
– Joindre plusieurs tables
– On utilise les informations communes des tables
Bases de Données : SGBD relationnels
Langage SQL – Les jointures
Prenons pour exemple un ouvrage de V. Hugo
Si l'on souhaite des informations sur la cote d'un exemplaire il faudrait
le faire en 2 temps
– 1) je récupère l'id de l'ouvrage :
SELECT id FROM ouvrage where auteur LIKE 'V. Hugo'
– 2) Je récupère la ou les cote avec l'id récupéré
SELECT cote FROM exemplaire WHERE ouvrageId = id_récupéré
Ne serait-ce pas merveilleux de pouvoir faire tout ça (et plus encore) en
une seule requête ?
C'est là que les jointures entrent en jeu
SELECT exemplaire.cote
FROM exemplaire
INNER JOIN ouvrage
ON exemplaire.ouvrageId = ouvrage.idOuvrage
WHERE ouvrage.auteur LIKE 'V. Hugo' ;
Bases de Données : SGBD relationnels
Langage SQL – Les jointures
C (de S).
SELECT nomf
FROM Livraison, Produit, SELECT nomf FROM Fournisseur
WHERE nf IN
Fournisseur, Usine
(SELECT nf FROM Livraison
WHERE
WHERE np IN
couleur = 'rouge'
(SELECT np FROM Produit
AND Livraison.np = Produit.np WHERE couleur = 'rouge')
AND Livraison.nf = Fournisseur.nf
AND nu IN
AND Livraison.nu = Usine.nu
(SELECT nu FROM Usine
AND (Usine.ville = 'Londres' WHERE ville = 'Londres' OR
OR Usine.ville = 'Paris'); ville = 'Paris') ) ;
Bases de Données : SGBD relationnels
Langage SQL –Requêtes avec blocs emboîtés ALL
Quantificateur
Numéros des fournisseurs qui ne fournissent que des produits rouges
SELECT nf FROM Fournisseur
WHERE 'rouge' = ALL
(SELECT couleur FROM Produit
WHERE np IN
(SELECT np FROM Livraison
WHERE Livraison.nf = Fournisseur.nf ) ) ;
SELECT nomf
FROM Fournisseur
WHERE EXISTS ( SELECT *
FROM Livraison, Produit
WHERE Livraison.nf = Fournisseur.nf
AND Livraison.np = Produit.np
Le produit fourni
AND Produit.couleur = 'rouge' ); est rouge
41
Bases de Données : SGBD relationnels
Langage SQL –Blocs emboîtés - récapitulatif
SELECT …
FROM …
WHERE …
attr IN requête
EXISTS requête
Attributs calculés
Exemple : SELECT nom, population*1000/surface FROM
Pays
Opérateurs
d'agrégation
Opérateurs sur attributs numériques
SUM: somme des valeurs des tuples sélectionnés
AVG: moyenne
MAX: maximum
pays
Nom Capitale Population Surface Continent
Irlande Dublin 5 70 Europe
Autriche Vienne 10 83 Europe
UK Londres 50 244 Europe
Suisse Berne 7 41 Europe
USA Washington 350 441 Amérique
Donne le résultat :
5 50 18 438
Bases de Données : SGBD relationnels
Langage SQL – Traitement des résultats - DISTINCT
Suppression des doubles
pays
Nom Capitale Population Surface Continent
Irlande Dublin 5 70 Europe
Autriche Vienne 10 83 Europe
UK Londres 50 244 Europe
Suisse Berne 7 41 Europe
USA Washington 350 441 Amérique
Continent
Donne le résultat :
Europe
Amérique
Bases de Données : SGBD relationnels
Langage SQL – Traitement des résultats - ORDER BY
Tri des tuples du résultat
pays
Nom Capitale Population Surface Continent
Irlande Dublin 5 70 Europe
Autriche Vienne 10 83 Europe
UK Londres 50 244 Europe
Suisse Berne 7 41 Europe
USA Washington 350 441 Amérique
Europe 5 50 18 438 4
5 50 18 438 4
49
Systèmes d’Information 2
/ Bases de Données 2
Abderrahmane Ouchatti
2021/2022
Plan
1. Introduction aux Systèmes d’information
Définition – objectif
SI & informatiques
SI & Web
2. Langage PHP
Définitions & Syntaxe de base
Variables & Types de données
Opérateurs
Instructions conditionnelles
Boucles
Fonctions
Tableaux
Classes et Objets
Dates et heures
Interactivité PHP - formulaires
Sessions
2
3. SGBD (MySQL)
Introduction
Environnement
Entrées Sorties
Système réel
Régulation
3
Introduction
Système d’Information
Système =
Ensemble auto-réglable et interagissant avec
l’environnement qui fonctionne en vue d’un objectif
précis
Information =
Données enrichies d’un modèle d’interprétation
4
Introduction
Fonctions du SI
Un SI a deux fonctions principales :
La production d’information
• Collecter des informations
• Traiter et transmettre des informations
• Mémoriser des informations
La mise en œuvre d’outils de gestion
• Fonction technologiques (matériels, logiciels, méthodes,
savoir-faire, …)
• Fonction économique
• Fonction sociale
5
Introduction
Informatique et SI
L’informatique facilite la gestion d’un SI mais ne le couvre pas
dans son ensemble.
7
Introduction
8
Introduction
Système d’information
Système informatique ou
système d’information automatisé
Information
non structurée,
procédures
Programmes, non automati-
Programmes,
Procédures,
Bases Programmes,
Procédures, sées, …
Programmes,
…
Procédures,
de …
Procédures,
…
données
…
10
Introduction
SI web
caractérisé par:
– Grand volume de données
– Données organisées en structures web
– La structure est réalisée sous forme d’hyperliens
– Disponible à un grand nombre d’utilisateurs aux profils
diversifiés
– Potentiel d’atteindre une audience plus large à travers
différentes plateformes
– Permettent d’intégrer différentes sources de données
hétérogènes et réparties sur le Web
11
Introduction
SI web vs. SI classiques
SI Classiques
– Référentiel de données fermé et bien défini
– Répondent aux besoins d’utilisateurs spécifiques et connus
d’avance
– Utilisent des plateformes dédiées
SI Web
Sources de données hétérogènes, dynamiques et réparties
Répondent aux besoins d’une audience large et de profils
diversifiés
Utilisent la navigation web avec ses caractéristiques propres
12
Introduction
SI web
Caractéristiques
– Orientés données (sources multiples et hétérogènes)
– Multi plateformes
13
Introduction
SI web
Technologies
– Aspect multimédia
– Hypermédia : données textuelles auxquelles s’adjoignent
des images fixes ou animées et des sons
– Hyper-document : données que l’on met en relation dans
un produit hypermédia ou multimédia
– Le matériel : poste client et réseau maillé de la toile
– Poste client : logiciel de navigation
– Réseau : accès en réseau
– Les langages : HTML, XHTML, XML, ….
14
– Les architectures client/serveur
Introduction
SI: Application web - Site web
Ensemble constitué de l’information et de l’infrastructure qui
l’organise
Consultable à travers un réseau au moyen d’un système web
Collection de pages web, communes à un domaine particulier,
disponibles sur WWW à travers Internet
16
Introduction
SI: Application web - Structure technologique
requête
réponse
appel de la page
Base de Script
données extraction Document
de données PHP exécution
MySQL Html
17
Introduction
SI: Application web - Structure technologique
Portail
Internaute SI opérationnel
entreprise
18
Introduction
SI: Internet et pages web
21
Introduction
SI: Application web - Pages web dynamiques
Langages de création de pages web dynamiques côté serveur
CGI
ASP
JSP
Le Langage PHP
23
PHP
Définition
Principe
Les scripts PHP sont généralement intégrés dans le code
d’un document HTML
L’intégration nécessite l’utilisation de balises
avec le style xml : <? ligne de code PHP ?>
25
PHP
Intégration PHP et HTML
Forme d’une page PHP < ?php
//ligne de code PHP
?>
Intégration directe <html>
<head> <title> Mon script PHP
</title> </head>
<body>
//ligne de code HTML
< ?php
//ligne de code PHP
?>
//ligne de code HTML
….
</body> </html>
27
PHP
Syntaxe de base
Typologie
Toute instruction se termine par un point-virgule
Sensible à la casse
Sauf par rapport aux fonctions
Commentaires
/* Voici un commentaire! */
NULL
// un commentaire sur une ligne
_FILE_
Constantes _LINE_
Define("nom_constante", valeur_constante ) PHP_VERSION
define (“ma_const”, “Vive PHP4”) ; PHP_OS
define (“an”, 2002) ; TRUE et FALSE
E_ERROR
Les constantes prédéfinies
28
PHP
Syntaxe de base – Les variables
Principe
Commencent par le caractère $
N'ont pas besoin d'être déclarées
29
PHP
Syntaxe de base – Les variables
Visibilité des variables
Variable locale
– Visible uniquement à l’intérieur d’un contexte d’utilisation
Variable globale
– Visible dans tout le script
– Utilisation de l’instruction global() dans des contextes
locales
<? $var = 100;
function test()
{
global $var;
return $var;
}
$resultat = test();
if ($resultat) echo $resultat; else echo " erreur ";
?>
30
PHP
Syntaxe de base – Les variables
Variables dynamiques
Permettent d'affecter un nom différent à une autre variable
$nom_variable = 'nom_var';
$$nom_variable = valeur; // équivaut à $nom_var = valeur;
Les accolades servent aussi à éviter toute confusion lors du rendu d'une
variable dynamique
echo "Nom : $nom_variable - Valeur : ${$nom_variable}";
// équivaut à echo "Nom : $nom_variable - Valeur : $nom_var";
31
PHP
Syntaxe de base – Les variables
Variables prédéfinies
Les variables d'environnement dépendant du client
Variable Description
$_SERVER["HTTP_HOST"] Nom d'hôte de la machine du client (associée
à l'adresse IP)
$_SERVER["HTTP_REFERER"] URL de la page qui a appelé le script PHP
$_SERVER["HTTP_ACCEPT_LANGUAGE"] Langue utilisée par le serveur (par défaut en-
us)
$_SERVER["HTTP_ACCEPT"] Types MIME reconnus par le serveur
(séparés par des virgules)
$_SERVER["CONTENT_TYPE"] Type de données contenu présent dans le
corps de la requête. Il s'agit du type MIME
des données
$_SERVER["REMOTE_ADDR"] L'adresse IP du client appelant le script CGI
$_SERVER["PHP_SELF"] Nom du script PHP
32
PHP
Syntaxe de base – Les variables
Variables prédéfinies
Les variables d'environnement dépendant du serveur
Variable Description
$_SERVER["SERVER_NAME"] Le nom du serveur
$_SERVER["HTTP_HOST"] Nom de domaine du serveur
$_SERVER["SERVER_ADDR"] Adresse IP du serveur
$_SERVER["SERVER_PROTOCOL"] Nom et version du protocole
utilisé pour envoyer la requête au
script PHP
$_SERVER["DATE_GMT"] Date actuelle au format GMT
33
PHP
Syntaxe de base – Les variables
Variables prédéfinies
Affichage des variables d'environnement
– la fonction phpinfo()
• <? phpinfo(); ?>
• echo phpinfo(constante);
– la fonction getenv()
• <? echo getenv("HTTP_USER_AGENT");?> 34
PHP
Syntaxe de base – Les types de données
Principe
Pas besoin d’affecter un type à une variable avant de l’utiliser
Types de données
Les entiers : le type Integer
Les objets
35
PHP
Syntaxe de base – Les types de données
Transtypage
La fonction settype() permet de convertir le type auquel appartient
une variable
<? $nbre=10;
Settype($nbre, " double ");
Echo " la variable $nbre est de type " , gettype($nbre); ?>
chaîne_result = chop(chaîne);
supprime les espaces blancs en fin de chaîne.
caractère = chr(nombre);
retourne un caractère en mode ASCII
chaîne_result = crypt(chaîne [, chaîne_code])
code une chaîne avec une base de codage.
echo expression_chaîne;
affiche à l'écran une ou plusieurs chaînes de caractères.
$tableau = explode(délimiteur, chaîne);
scinde une chaîne en fragments à l'aide d'un délimiteur et retourne un 38
tableau.
PHP
Syntaxe de base – Les opérateurs
opérateurs de calcul
opérateurs d'assignation
opérateurs d'incrémentation
opérateurs de comparaison
opérateurs logiques
opérateurs bit-à-dit
opérateurs de rotation de bit
39
PHP
Syntaxe de base – Les opérateurs
Opérateurs d'assignation
Opérateur Effet
+= addition deux valeurs et stocke le résultat dans la variable (à gauche)
-= soustrait deux valeurs et stocke le résultat dans la variable
*= multiplie deux valeurs et stocke le résultat dans la variable
/= divise deux valeurs et stocke le résultat dans la variable
donne le reste de la division deux valeurs et stocke le résultat dans la
%=
variable
Effectue un OU logique entre deux valeurs et stocke le résultat dans la
|=
variable
Effectue un OU exclusif entre deux valeurs et stocke le résultat dans la
^=
variable
Effectue un Et logique entre deux valeurs et stocke le résultat dans la
&=
variable
.= Concatène deux chaînes et stocke le résultat dans la variable 40
PHP
Syntaxe de base – Les opérateurs
Opérateurs d'incrémentation
Opérateur Dénomination Effet Syntaxe Résultat (avec x valant 7)
++ Incrémentation Augmente d'une unité la variable $x++
-- Décrémentation Diminue d'une unité la variable $x--
Opérateurs de comparaison
Opérateur Dénomination Effet Exemple Résultat
== opérateur Compare deux valeurs et vérifie
$x==3
d'égalité leur égalité
opérateur Vérifie qu'une variable est
< d'infériorité strictement inférieure à une $x<3
stricte valeur
opérateur Vérifie qu'une variable est
<= $x<=3
d'infériorité inférieure ou égale à une valeur
opérateur de Vérifie qu'une variable est
> supériorité strictement supérieure à une $x>3
stricte valeur
Opérateurs bit-à-bit
Op Dénomination Effet Syntaxe Résultat
Retourne 1 si les deux bits de même
& ET bit-à-bit 9 & 12 (1001 & 1100)
poids sont à 1
Retourne 1 si l'un ou l'autre des deux
| OU bit-à-bit 9 | 12 (1001 | 1100)
bits de même poids est à 1 (ou les deux)
Retourne 1 si l'un des deux bits de
^ OU bit-à-bit 9 ^ 12 (1001 ^ 1100)
même poids est à 1 (mais pas les deux)
Complément Retourne 1 si le bit est à 0 (et
~ ~9 (~1001)
(NON) inversement)
42
PHP
Syntaxe de base – Les opérateurs
Opérateurs de rotation de bit
Op Dénom. Effet Syntaxe Résultat
Décale les bits vers la gauche (multiplie par 2 à chaque
Rotation à
<< gauche
décalage). Les zéros qui sortent à gauche sont perdus, 6 << 1 (110 << 1)
tandis que des zéros sont insérés à droite
Rotation à Décale les bits vers la droite (divise par 2 à chaque
droite avec décalage). Les zéros qui sortent à droite sont perdus,
>> conservation tandis que le bit non-nul de poids plus fort est recopié à
6 >> 1 (0110 >> 1)
du signe gauche
Autres opérateurs
Op Dénomination Effet Syntaxe Résultat
"Bonjour"."Au
. Concaténation Joint deux chaînes bout à bout
revoir"
Référencement
$ de variable
Permet de définir une variable $MaVariable = 2;
43
PHP
Syntaxe de base – Les opérateurs
Priorités
Priorité des opérateurs
() []
-- ++ ! ~ -
* / %
+ -
< <= >= >
== !=
&
^
|
&&
||
? :
= += -= *= /= %= <<= >>= >>>= &= ^= |=
AND
XOR
44
PHP
Syntaxe de base – Les instructions conditionnelles
L'instruction if
if (condition réalisée) { liste d'instructions }
Opérateur ternaire
(condition) ? instruction si vrai : instruction si faux
45
PHP
Syntaxe de base – Les instructions conditionnelles
L'instruction switch
switch (Variable) {
case Valeur1: Liste d'instructions break;
case Valeur1: Liste d'instructions break;
case Valeurs...: Liste d'instructions break;
default: Liste d'instructions break;
}
46
PHP
Syntaxe de base – Les boucles
Boucle for
for ($i=1; $i<6; $i++) { echo "$i<br>"; }
Boucle while
While(condition) {bloc d’instructions ;}
While (condition) :Instruction1 ;Instruction2 ;
…. endwhile ;
Boucle do…while
Do {bloc d’instructions ;}while(condition) ;
47
PHP
Syntaxe de base – Les fonctions
48
PHP
Syntaxe de base – Les fonctions
Fonction avec nombre d’arguments inconnu
<?php
function produit()
{
$nbarg = func_num_args() ;
$prod=1 ;
// la fonction produit a ici $nbarg arguments
for ($i=0 ; $i <$nbarg ; $i++)
{
$prod *= func_get_arg($i)
}
return $prod;
}
echo "le produit est : ", produit (3, 77, 10, 5, 81, 9),
"<br />" ;
// affiche le produit est 8 419 950
?>
49
PHP
Syntaxe de base – Les fonctions
Passage de paramètre par référence
Pour passer une variable par référence, il faut que son nom soit précédé du
symbole & (exemple &$a)
<?
function dire_texte($qui, &$texte){ $texte = "Bienvenue $qui";}
$chaine = "Bonjour ";
dire_texte("cher phpeur",$chaine);
echo $chaine; // affiche "Bienvenue cher phpeur"
?>
L’appel récursif
PHP admet les appels récursifs de fonctions
50
PHP
Syntaxe de base – Les fonctions
51
PHP
Syntaxe de base – Les fonctions
Variables locales et variables globales
variables en PHP : global, static, local
toute variable déclarée en dehors d’une fonction est globale
utiliser une variable globale dans une fonction, l’instruction global suivie
du nom de la variable
Pour conserver la valeur acquise par une variable entre deux appels de la
même fonction : l’instruction static.
Les variables statiques restent locales à la fonction et ne sont pas réutilisables à
l’extérieur.
<?php
function cumul ($prix) { static $cumul = 0 ;
static $i = 1 ;
echo "Total des achats $i = ";
$cumul += $prix; $i++ ;
return $cumul ; }
echo cumul (175), "<br />" ;echo cumul (65), "<br />" ;echo cumul
(69), "<br />" ; ?>
52
PHP
Syntaxe de base – Les tableaux
Principe
Création à l’aide de la fonction array()
53
PHP
Syntaxe de base – Les tableaux
$tableau[indice] = valeur;
$jour[3] = "Mercredi";
$note[0] = 20;
$variable = $tableau[indice];
$JJ = $jour[6]; // affecte "Samedi" à $JJ
echo $note[1] + $note[5];
54
PHP
Syntaxe de base – Les tableaux
$tableau["indice"] = valeur;
$jour["Dimanche"] = 7
$jour["Mercredi"] = "Le jour des enfants"
$variable = $tableau["indice"];
$JJ = $jour["Vendredi"]; //affecte 6 à $JJ
echo $jour["Lundi"]; //retourne la valeur 2
55
PHP
Syntaxe de base – Les tableaux
Tableaux multidimensionnels
Pas d'outils pour créer directement des tableaux multidimensionnels
L'imbrication des tableaux est possible
$variable = $tableau[indice][indice];
$MM = $element_date[0][0]; //affecte "Janvier" à $MM
echo $element_date[1][5] . " 7 " . $element_date[0][2] . "2002"; //
retourne "Jeudi 7 Mars 2002"
56
PHP
Syntaxe de base – Les tableaux
58
PHP
Syntaxe de base – Les tableaux
Fonctions de tri
Tri selon les valeurs
La fonction sort() effectue un tri sur les valeurs des éléments d’un tableau
selon un critère alphanumérique :selon les codes ASCII :
– « a » est après « Z » et « 10 » est avant « 9 »)
– Le tableau initial est modifié et non récupérables dans son ordre original
– Pour les tableaux associatifs les clés seront perdues et remplacées par un
indice créé après le tri et commencant à 0
La fonction rsort() effectue la même action mais en ordre inverse des codes
ASCII.
La fonction asort() trie également les valeurs selon le critère des codes
ASCII, mais en préservant les clés pour les tableaux associatifs
La fonction arsort() la même action mais en ordre inverse des codes ASCII
la fonction natcasesort() effectue un tri dans l’ordre alphabétique non ASCII
(« a » est avant « z » et « 10 » est après « 9 »)
59
PHP
Syntaxe de base – Les tableaux
Fonctions de tri
Tri sur les clés
La fonction ksort() trie les clés du tableau selon le critère des codes
ASCII, et préserve les associations clé /valeur
La fonction krsort() effectue la même action mais en ordre inverse des
codes ASCII
<?php
$tab2 = array ("1622"=>"Molière","1802"=>"Hugo","1920"=>"Vian") ;
ksort ($tab2);
echo "<h3 > Tri sur les clés de \$tab2 </h3>" ;
foreach ($tab2 as $cle=>$valeur) {
echo "<b> l’élément a pour clé : $clé; et pour valeur : $ valeur
</b> <br />";
}
?>
60
PHP
Syntaxe de base – Les tableaux
Fonctions de tableaux
$tableau = array_count_values($variable);
retourne un tableau comptant le nombre d'occurrences des valeurs d'un tableau.
$tableau = array_flip($variable);
intervertit les paires clé/valeur dans un tableau.
<?php
function impair($var)
{return ($var % 2 == 1);}
function pair($var)
{return ($var % 2 == 0);}
64
PHP
Syntaxe de base – Les classes et les objets
Création d’une classe et d’un objet
Une classe est composée de deux parties:
Les attributs: il s'agit des données représentant l'état de l'objet
Les méthodes : il s'agit des opérations applicables aux objets
<?php
class client
{
var $nom; var $ville; var $naiss ;
function Afficher_age() {
$jour = getdate();
$an=$jour["year"];
$age = $an - $this->naiss; //utilisation des propriétés
echo "Il a $age ans cette année <br echo "le nom du client1 est ", $client1-
/>" ; >nom, "<br />" ;
}
} echo "la ville du client1 est ", $client1->
//création d’un objet
ville, "<br />" ;
$client1 = new client() ; echo "le client1 est né en ", $client1-
//affectation des propriétés de >naiss, "<br />" ;
l’objet
$client1 -> nom = "Ahmadi" ; //appel de la méthode Afficher_age()
$client1-> naiss = "1998" ; $client1->Afficher_age() ;
$client1->ville = "Casablanca" ; ?>
65
PHP
Syntaxe de base – Les classes et les objets
La variable $this
$this->age = $Age;
66
PHP
Syntaxe de base – Les classes et les objets
Héritage
Instruction extends : class nouvelle_classe extends super_classe
Constructeur
Une fonction qui est appelée automatiquement par la classe lors de son
instanciation avec l'opérateur new
Doit posséder un nom identique à celle de la classe
Avec PHP 3, une fonction définie dans une classe héritée devient un
constructeur si son nom est similaire à celle de la nouvelle classe
Avec PHP 4, une fonction constructeur ne peut être définie que dans sa
propre classe
Lorsqu'une classe héritant d'une autre est instanciée et si aucun
constructeur n'est défini dans cette classe, alors la fonction constructeur
sollicitée sera celle de la super-classe
67
PHP
Syntaxe de base – Les classes et les objets
L'opérateur ::
faire référence à une fonction définie dans une super-classe à partir d'une
classe héritant de cette dernière
class nouvelle_classe extends super_classe
{function fonction()
{echo "Blocs d'instructions de la fonction fonction() . "
dans la nouvelle-classe.";
super_classe::fonction(); } }
L'opérateur parent
faire référence à des variables ou des fonctions présentes dans la super-classe à
partir d'une autre classe héritant de cette dernière
class nouvelle_classe extends super_classe
{ function fonction() {
echo "Blocs d'instructions de la fonction fonction()"
. " dans la nouvelle-classe.";
// se référe à la fonction fonction() de la super_classe
parent::fonction(); }
68
}
PHP
Syntaxe de base – Les classes et les objets
Sauvegarde des objets
La sauvegarde et la relecture des objets s'effectuent respectivement
par serialize et unserialize
69
PHP
Syntaxe de base – Les classes et les objets
class nom_classe{
function __sleep()
{Instructions à accomplir avant serialize()...}
function __wakeup() {
Instructions à accomplir avant unserialize()...}
}
73
PHP
Syntaxe de base – Les classes et les objets
75
PHP
Syntaxe de base – Les classes et les objets
Les objets PHP sont des tableaux associatifs
Les noms des variables sont conçus comme des mots-clés
Les valeurs des variables comme les éléments d’un tableau associatif
<?
Class ClasseTest {
var $col = "#0000E0" ;
var $txt= "Salut PHP" ;
var $ft = "Arial" ;
function ClasseTest() {
echo "<FONT FACE=\ " COLOR=\"$this->col\" >$this-
>txt</FONT><br>;}};
76
PHP
Syntaxe de base – Les dates et heures
Les fonctions de date et d’heure
true | false = checkdate(mois, jour, année);
vérifie la validité d'une date.
$chaine = date(format [, nombre]);
retourne une chaîne de caractères date/heure selon le format spécifié et représentant l
date courante par défaut.
$tableau = getdate([nombre]);
retourne les éléments de date et d'heure dans un tableau associatif.
$tableau = gettimeofday();
retourne l'heure courante dans un tableau associatif.
77
PHP
Syntaxe de base – Les dates et heures
$chaine = microtime();
retourne l'instant UNIX courant en secondes et microsecondes (1 janvier 1970 à 0H00)
78
PHP
Syntaxe de base – Les dates et heures
79
PHP
Syntaxe de base – Les dates et heures
80
PHP
Syntaxe de base – Interactivité PHP - formulaires
Formulaire HTML
Retourne des informations saisies par un utilisateur vers une
application serveur
La création d’un formulaire nécessite la connaissance de quelques
balises HTML indispensables :
Structure : un formulaire commence toujours par la balise
<form> et se termine par la balise </form>
Champ de saisie de text en ligne :
<input type = "text" name ="nom_du_champ" value="chaîne">
83
PHP
Syntaxe de base – Interactivité PHP - formulaires
Méthodes d’envoi get et post
transmission selon une des deux méthodes d'envoi GET ou POST
85
PHP
Syntaxe de base – Interactivité PHP - formulaires
PHP et les formulaires
La plupart des éléments d'un formulaire n'acceptent qu'une seule et
unique valeur, laquelle est affectée à la variable correspondante
dans le script de traitement.
$Champ_Saisie "Ceci est une chaîne de caractères.";
88
PHP
Syntaxe de base – Interactivité PHP - Base de données
Principe
PHP propose de nombreux outils permettant de travailler avec la
plupart des SGBDR
Oracle, Sybase, Microsoft SQL Server, PostgreSQL ou encore MySQL
89
PHP
Syntaxe de base – Les Sessions
Principe
Est un mécanisme permettant de mettre en relation les différentes requêtes
du même client sur une période de temps donnée.
Les sessions permettent de conserver des informations relatives à un
utilisateur lors de son parcours sur un site web
Des données spécifiques à un visiteur pourront être transmises de page en
page afin d'adapter personnellement les réponses d'une application PHP
Chaque visiteur en se connectant à un site reçoit un numéro d'identification
dénommé identifiant de session (SID)
La fonction session_start() se charge de générer automatiquement cet
identifiant unique de session et de créer un répertoire. Elle doit être placée
au début de chaque page afin de démarrer ou de continuer une session.
<?php
session_start();
$Session_ID = session_id();
// $Session_ID = 7edf48ca359ee24dbc5b3f6ed2557e90 ?>
90
PHP
Syntaxe de base – Les Sessions
Principe
Un répertoire est créé sur le serveur à l'emplacement désigné par le
fichier de configuration php.ini, afin de recueillir les données de la
nouvelle session.
[Session]
session.save_path= C:\PHP\sessiondata
; Rép session = \sess_7edf48ca359ee24dbc5b3f6ed2557e90
91
PHP
Syntaxe de base – Les Sessions
Le traitement des variables de session
Les variables de session sont chargées dans une session par
l'intermédiaire de la fonction session_register()
<?php
session_start();
session_register("nom_variable");
...
session_register("nom_variableN");
?>
92
PHP
Syntaxe de base – Les Sessions
Les fonctions de sessions
session_start() -- Initialise les données de session
session_id() -- Affecte et/ou retourne l'identifiant de session courante
session_name() -- Affecte et/ou retourne le nom de la session courante
session_register() -- Enregistre une variable dans la session courante
session_destroy() -- Détruit toutes les données enregistrées d'une session
session_is_registered() -- Indique si une variable a été enregistrée dans la session ou pas
session_unregister() -- Supprime une variable dans la session courante
session_unset() -- Détruit toutes les variables de session
session_cache_expire() -- Retourne la date d'expiration du cache de la session
session_save_path() -- Affecte et/ou retourne le chemin de sauvegarde de la session courante
session_decode() -- Décode les données de session à partir d'une chaîne
session_encode() -- Encode les données de session dans une chaîne
96
PHP
Syntaxe de base – Les en-têtes HTTP
Principe
Les entêtes sont des informations envoyées lors de chaque échange
par le protocole HTTP entre un navigateur et un serveur
Informations sur les données à envoyer dans le cas d'une
requête
97
PHP
Syntaxe de base – Les en-têtes HTTP
Principe
PHP fournit une fonction permettant d'envoyer des en-tête HTTP
manuellement du serveur au navigateur
booléen header(chaîne en-tête HTTP)
<?
$headers = getallheaders();
foreach ($headers as $nom => $contenu) {
echo "headers[$nom] = $contenu<br />\n";
}
?>
99
PHP
Syntaxe de base – Les en-têtes HTTP
header(chaîne);
envoie une entête HTTP avant toute commande PHP.
100
PHP
Syntaxe de base – Les en-têtes HTTP
header(chaîne);
envoie une entête HTTP avant toute commande PHP.
101