Académique Documents
Professionnel Documents
Culture Documents
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/?page_id=449
Master 1 IDSM-Kharkiv
Anne 2014-2015
Jrme Darmont
http://eric.univ-lyon2.fr/~jdarmont/?feed=rss2
http://eric.univ-lyon2.fr/~jdarmont
Plan du cours
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Un peu d'histoire
HTML : HyperText Markup Language
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
Liens hypertextes
Langage base de balises
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Consortium)
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
1990 : HTML 1
1995 : HTML 2
1995 : HTML+ et HTML 3 (non standards)
1997 : HTML 3.2 et HTML 4 (W3C : World Wide Web
Programmation Web
Valeur
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
<head>
<!-- En-tte -->
</head>
<body>
<!-- Corps du document -->
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
</body>
En-tte
http://eric.univ-lyon2.fr/~jdarmont/
10
Programmation Web
Prchargement de lien
http://eric.univ-lyon2.fr/~jdarmont/
Corps du document
Prchargement DNS
http://eric.univ-lyon2.fr/~jdarmont/
<head>
<!-- Jeu de caractres universel -->
<meta charset="utf-8" />
Titre : <title></title>
Programmation Web
Exemple d'en-tte
</html>
Invisibles
Permettent la mise en page ultrieure du document
Permettent la gnration automatique, par ex., dune table des
matires, des figures, etc.
11
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
12
Texte
Images
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Structuration du document
Contenu principal :
Section :
Article :
Apart :
Entte :
Pied de page :
Menu/navigation :
Bote de dialogue :
13
<main> </main>
<section> </section>
<article> </article>
<aside> </aside>
<header> </header>
<footer> </footer>
<nav> </nav>
<dialog> </dialog>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Sparateurs :
14
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Formatage de texte
Adresse
Emphase : <em></em>
Surlignage : <mark></mark>
Citation
En indice : <sub></sub>
En exposant : <sup></sup>
Texte prformat
Caractres spciaux :
< : <
& : &
> : >
" : "
espace inscable :
15
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
16
http://eric.univ-lyon2.fr/~jdarmont/
Liens hypertextes
Forme gnrale : <a href="URI">libell</a>
17
Programmation Web
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
18
http://eric.univ-lyon2.fr/~jdarmont/
Ancres
Images
Formats reconnus : GIF, JPEG, PNG
19
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Exemple
21
http://eric.univ-lyon2.fr/~jdarmont/
22
Jauges
<figure>
<img src="tim-berners-lee.jpg" alt="Photo Tim BL" />
<video src="test.ogg" controls="controls" muted="muted">
Le format .ogg n'est pas support.
</video>
<audio src="chord.wav" controls="controls">
Le format .wav n'est pas support.
</audio>
<figcaption>Tout le multimdia de HTML5</figcaption>
</figure>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Barre de progression
<progress max="100" value="75"></progress>
Apparence :
21
http://eric.univ-lyon2.fr/~jdarmont/
Attributs communs
Programmation Web
Figures
Ex.
<a href="http://www.univ-lyon2.fr">
<img src="lyon2.gif" alt="Logo Lyon 2" />
</a>
20
Multimdia
Exemple
Barre de mesure
<meter min="0" max="100" low="10" high="90"
optimum="50" value="75">75 %</meter>
<ul>
</ul>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
<li>1er lment</li>
<li>2me lment</li>
<li>3me lment</li>
24
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Listes de dfinitions
Imbrication de listes
Exemple
Exemple
<dl>
<dt>1er terme</dt>
<dd>Dfinition du 1er terme</dd>
<dt>2me terme</dt>
<dd>Dfinition du 2me terme</dd>
<ul>
<li>Elment non ordonn 1
<ol>
<li>Sous-lment ordonn 1.1</li>
<li>Sous-lment ordonn 1.2</li>
</ol>
</li>
<li>Elment non ordonn 2</li>
</dl>
Rsultat l'affichage
1er terme
Dfinition du 1er terme
2me terme
Dfinition du 2me terme
25
Programmation Web
</ul>
http://eric.univ-lyon2.fr/~jdarmont/
26
Tableaux simples
<table>
<caption>Mes totaux</caption>
<tr>
<th>Jour de la semaine</th> <th>Montant</th> <th>Total</th>
</tr>
<tr>
<td>Lundi</td> <td>456 euros</td> <td>456 euros</td>
</tr>
<tr>
<td>Mardi</td> <td>200 euros </td> <td>656 euros </td>
</tr>
</table>
http://eric.univ-lyon2.fr/~jdarmont/
28
Programmation Web
C1
Jour de la semaine
Montant
Lundi
Mardi
C2
L1
Total
L12
C12
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Mes totaux
29
http://eric.univ-lyon2.fr/~jdarmont/
Exemple de tableau
27
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
30
L2
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Plan du cours
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
31
http://eric.univ-lyon2.fr/~jdarmont/
32
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
33
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
34
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
* Daprs webdesignfromscratch.com
35
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
36
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Exemple de simplification
pixels dcoratifs
pixels porteurs dinformation
37
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
38
lments de prsentation
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
lments de prsentation
Contre-exemple !
39
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
40
lments de prsentation
http://eric.univ-lyon2.fr/~jdarmont/
lments de prsentation
Programmation Web
Titres en gras
41
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
42
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
lments de prsentation
Couleurs vives
Navigation
Objectifs : lutilisateur doit savoir facilement
Dlimitation de sections
Mise en valeur
dlments importants
Mise en place dune
ambiance
Dgrads
Textures
(reflets, transparence)
Icnes
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
44
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
43
45
45
http://eric.univ-lyon2.fr/~jdarmont/
46
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Web smantique
*James Hendler, Web 3.0: The Dawn of Semantic Search, Computer, January 2010.
47
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
48
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Accessibilit
Accessibilit
Prvoir des en-ttes de ligne et de colonnes dans les
tableaux
Prceptes daccessibilit :
49
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
50
Plan du cours
http://eric.univ-lyon2.fr/~jdarmont/
Dfinition et caractristiques
Cascading Style Sheets (CSS) :
Feuilles de style en cascade
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
51
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
52
Avantages
Programmation Web
Dfinitions de styles
Meilleure accessibilit
Programmation Web
53
http://eric.univ-lyon2.fr/~jdarmont/
http://eric.univ-lyon2.fr/~jdarmont/
54
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Notion de cascade
Units de taille
Units absolues
Ex. <p><em></em></p>
Si un style est appliqu <p>, il s'applique <em>.
55
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
px : pixel
pt : point
em : hauteur de ligne
% : proportion par rapport la taille de la fentre
56
Spcification de couleurs
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Un slecteur
Des proprits
Une valeur pour chaque proprit
Exemple
h1 { color: yellow;
font-weight: bold;
}
57
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
58
Slecteurs
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Classe de style
Ex.
Ex.
59
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
60
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
10
Classe de style
Ex.
Ex.
61
un lment identifi :
<div class="style_bleu">
<h1></h1>
<p></p>
<p></p>
</div>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Proprits de typographie
color
color: black;
color: #000000;
background-color
background-color: white;
background-color: #FFFFFF;
background-image
background-image: url("URL");
background-repeat
background-repeat: no-repeat;
background-position
background-position: center;
Programmation Web
62
Proprits de couleur
63
http://eric.univ-lyon2.fr/~jdarmont/
font-family
font-family: times;
font-family: arial, verdana;
font-size
font-size: 1.5em;
font-style
font-style: italic;
font-weight
font-weight: bold;
font-weight: bolder;
text-decoration
text-decoration: underline;
text-decoration: line-through;
64
Proprits de texte
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Page Web
text-align
text-indent
65
text-align:
text-align:
text-align:
text-align:
left;
right;
center;
justify;
margin-left
text-indent: 10pt;
text-indent: 15px;
text-indent: 5%;
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
width
Bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla
padding-top
bla bla bla bla bla bla bla bla bla bla bla
blatata
bla bla
bla
Tatabla
tata
tatablatata
bla bla bla bla bla bla bla bla bla bla bla
blatata
blatata
bla bla
tatabla
tata
tatabla
bla bla bla bla bla bla bla bla bla bla bla
bla
bla
bla
bla
bla
tata tata tata tata tatabla height
bla bla bla bla bla bla bla bla bla bla bla
blatata
blatata
bla bla
tatabla
tata
tatabla
bla bla bla bla bla bla bla bla bla bla bla
blatata
blatata
bla bla bla
tatabla
tata
bla bla bla bla bla bla bla bla bla blapadding-left
bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
margin-bottom
bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
66
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
11
Proprits d'hyperlien
width: 80pt;
Hyperliens
height: 25%;
margin
padding: 5px;
padding-bottom: 10px;
Hyperliens visits
Bote
centre
margin: 10px;
margin-left: 10%;
margin-left: auto; margin-right: auto;
Hyperliens activs
overflow
overflow: auto;
border
67
Programmation Web
Coins
ronds
http://eric.univ-lyon2.fr/~jdarmont/
list-style-image
list-style
list-style: disc;
list-style: circle;
list-style: square;
list-style-image: url("URL");
Balise caption:
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
70
C1
C1
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Style 2
C2
caption-side: top;
caption-side: bottom;
list-style: decimal;
list-style: upper-roman;
list-style: lower-alpha;
69
http://eric.univ-lyon2.fr/~jdarmont/
Listes ordonnes
Programmation Web
Proprits de tableau
Listes non-ordonnes
list-style
68
Proprits de liste
HTML
<table>
<tr> <td>C1</td> <td>C2</td> </tr>
<tr> <td>C3</td> <td>C4</td> </tr>
</table>
C2
Style 1 (CSS)
table, td { border: 1px solid black; }
C3
C4
C3
Style 2 (CSS)
C4
71
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
72
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
12
Positionnement flottant
Positionnement flottant
Exemple 1 :
Menu
CSS
(style
.menu_jaune)
HTML
100 pixels
73
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
<div class="menu_jaune">
<p>Menu</p>
</div>
<div>
<!-- Contenu de la page -->
</div>
74
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Conteneur
(style .page)
100 %
Positionnement flottant
Positionnement flottant
Exemple 2 :
Colonne 1
Colonne 2
Colonne 3
(style .colonne)
33 %
(style .colonne)
33 %
(style .colonne)
33 %
75
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
CSS
HTML
76
Positionnement absolu
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Positionnement absolu
1em
CSS
1em
77
<div class="boite_verte">
<p>Bla bla sur fond vert</p>
<div class="boite_jaune">
<p>Idem sur fond jaune</p>
</div>
</div>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
position: relative;
background-color: #00FF00;
width: 15em; }
15em
HTML
.boite_verte {
78
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
13
<main>
<header>
<h1>Exemple de mise en page</h1>
</header>
<div id="conteneur">
<nav>
<a href="http://www.univ-lyon2.fr">Universit Lyon 2</a>
</nav>
<section>
<article>Article 1</article>
<article>Article 2</article>
<article>Article 3</article>
</section>
</div>
<footer>
© IDSM
</footer>
79
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
80
background-color: silver;
}
main {
width: 1000px;
margin-left: auto;
margin-right: auto;
background-color: white;
padding: 1em;
}
header {
background-color: yellow;
text-align: center;
padding: 1em;
border-radius: 15px;
}
#conteneur {
float: left;
width: 750px;
background-color: lime;
margin-left: 1em;
border-radius: 15px;
}
article {
background-color: aqua;
margin: 1em;
}
footer {
background-color: fuchsia;
text-align: center;
padding: 1em;
border-radius: 15px;
width: 100%;
margin-top: 1em;
Programmation Web
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
}
section {
}
}
http://eric.univ-lyon2.fr/~jdarmont/
82
Gnralits
83
1994
1995
1995
1997
2000
2004
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Gnralits
http://eric.univ-lyon2.fr/~jdarmont/
Plan du cours
float: left;
width: 200px;
background-color: red;
padding: 1em;
border-radius: 15px;
font-family: arial;
}
body {
Programmation Web
nav {
*{
81
<main>
http://eric.univ-lyon2.fr/~jdarmont/
84
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
14
Gnralits
Syntaxe de base
Sparateurs d'instructions :
Commentaires
Serveur Web
Client
Ex.
<html>
<body>
Bonjour
</html>
</body>
85
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
$i = 1;
$pi=3.14;
$ch="oui";
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Variables d'environnement
Ex.
$matrice[0][0] = 2;
$msa["Dupont"][0] = 30;
$matrice2 = array(
array(1, 0, 0),
array(0, 1, 0),
array(0, 0, 1));
89
Programmation Web
Constantes
Initialisation :
Ex.
$notes_s = array(10, 12.5, 15, 8);
$notes_a = array("Valeriia" => 16, "Vadim" => 12);
Nombre dlments :
Ex.
$n = count($notes_s)
88
Variables et types
Fonctions associes :
87
Ex.
Ex. d'affectation
http://eric.univ-lyon2.fr/~jdarmont/
Variables et types
86
Variables et types
1 0 0
0 1 0
0 0 1
http://eric.univ-lyon2.fr/~jdarmont/
$_SERVER["PHP_SELF"]
$_SERVER["SERVER_NAME"]
$_SERVER["HTTP_REFERER"]
$_SERVER["REMOTE_ADDR"]
90
Ex.
http://eric.univ-lyon2.fr/~jdarmont/
15
Oprateurs
Oprateurs
Oprateurs d'affectation
Exemples
Affectation simple :
$a = 2;
Affectation multiple :
$a = $b = 2;
Affectation + opration :
$a += 2;
Pr/post incrmentation/dcrmentation :
++$a;
--$a;
$a++;
$a--;
Affectation conditionnelle :
$max=($a>$b)?$a:$b;
Ex.
Antislash :
Dollar :
Guillemets :
\\
\$
\"
91
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
92
Oprateurs
http://eric.univ-lyon2.fr/~jdarmont/
Affichage
Oprateurs logiques
Programmation Web
Procdures prdfinies
ET : and ou &&
OU : or ou ||
OU exclusif : xor
NON : !
Oprateurs de comparaison
galit/Diffrence :
Infrieur/Suprieur :
Infrieur ou gal/Suprieur ou gal :
==
<
<=
!=
>
>=
93
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
94
Programmation Web
Test :
95
http://eric.univ-lyon2.fr/~jdarmont/
Ex.
if (expression) instructions
[elseif (expression) instructions]
[else instructions]
if ($a>$b) echo "A > B";
if ($a>$b) { // Plusieurs instructions
echo "A > B";
$b = $a;
}
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Structures de contrle
96
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
16
Structures de contrle
Structures de contrle
Slection : switch(variable) {cas}
if ($a>$b) {
echo "A > B";
} else {
echo "A <= B";
}
Ex.
switch($ch) {
case "a": echo "A"; $ch="A"; break;
case "b": echo "B"; $ch="B"; break;
case "c": echo "C"; $ch="C"; break;
default: echo "Ni \"a\" ni \"b\" ni \"c\"";
}
97
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
98
Structures de contrle
Ex.
Programmation Web
$i=1;
while ($i<=10) { echo $i++;
}
Ex.
http://eric.univ-lyon2.fr/~jdarmont/
Structures de contrle
switch($i) {
case 0: echo "i=0"; break;
case 1: echo "i=1"; break;
case 2: echo "i=2"; break;
}
$i=1;
do { echo $i++;
} while ($i<=10);
Ex.
$tab[0]="Rouge";
$tab[1]="Vert";
$tab[2]="Bleu";
foreach ($tab as $val) {
echo "Valeur courante : $val<br />";
}
Ex.
99
http://eric.univ-lyon2.fr/~jdarmont/
100
Structures de contrle
Programmation Web
Structures de contrle
Inclusion de fichiers dans une page
Ex.
$tab["Rouge"]="#FF0000";
$tab["Vert"]="#00FF00";
$tab["Bleu"]="#0000FF";
foreach ($tab as $cle => $val) {
echo "Code de $cle : $val<br />";
}
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
101
http://eric.univ-lyon2.fr/~jdarmont/
102
require("mes_fonctions.inc.php");
include("une_page_web.html");
include('http://serveur.fr/pg.html');
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
17
Fonctions
Fonctions
Ex.
Exemple
function mon_max ($n1, $n2) {
return ($n1>$n2) ? $n1 : $n2;
}
Ex.
103
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
104
Variables statiques
105
http://eric.univ-lyon2.fr/~jdarmont/
Variables globales
function cafe($type="expresso") {
return "Je fais un $type<br />";
}
echo cafe(); // Je fais un expresso
echo cafe("capucino"); // Je fais un capucino
Programmation Web
function alaligne(&$chaine) {
$chaine .= "<br />";
}
$ch="Coucou !";
alaligne($ch); // <br /> ajout la fin
http://eric.univ-lyon2.fr/~jdarmont/
Rutilisation de code
Utilisation des fonctions include() et require()
106
Plan du cours
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Principe
Imbrication de requtes SQL dans du code PHP +
formulaires HTML pour les mises jour
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
107
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
108
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
18
Interrogation simple
SELECT liste_attributs FROM table
WHERE condition
Ex. SELECT nom, prenom FROM etudiant WHERE note>=10
Cration de table
109
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
110
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Ex. INSERT INTO etudiant VALUES (123, 'Darmont', 'Jrme', '15-01-1972', 15.5)
111
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
112
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
SELECT liste_attributs
FROM table1, table2, tableN
WHERE condition_jointure_t1t2
AND condition_jointure_tN-1tN
id_serveur = pilote:host=serveur;dbname=nom_bd
Ex.
$c = new PDO("mysql:host=localhost;dbname=darmont", "darmont", "x");
113
Ex.
SELECT *
FROM etudiant, diplome
WHERE etudiant.num_dipl = diplome.num_dipl
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Ex. try {
// Connexion
} catch (PDOException $erreur) {
echo "<p>Erreur : " . $erreur->getMessage() . "</p>\n";
}
114
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
19
Requte dinterrogation
// Connexion
$c = new PDO("mysql:host=localhost;dbname=darmont", "darmont", "x");
// Requte de slection
$q = "select nom, prenom from etudiant";
$res = $c->query($q);
echo "<ul>\n";
foreach($res as $l)
echo "<li>". $l["nom"] . " " . $l["prenom"] . "</li>\n";
echo "</ul>\n";
echo "<p>" . $res->rowCount() . " rsultat(s)</p>\n";
// Requte de mise jour
$res = $c->exec("update etudiant set note = note + 1") ;
echo "<p>$res ligne(s) modifie(s)</p>\n";
} catch (PDOException $erreur) { // Gestion des erreurs
echo "<p>Erreur : " . $erreur->getMessage() . "</p>\n";
}
$idconn->query(requte_SQL)
115
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
116
Programmation Web
Formulaires HTML
117
Programmation Web
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Formulaires HTML
118
Formulaires HTML
Exemple
<form action="ajout_etu.php" method="post"></form>
119
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
120
Ex.
<datalist id="prop_noms">
<option value="Dupond">
<option value="Durand">
<option value="Martin">
</datalist>
<input type="text" name="nom" list="prop_noms" />
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
20
Formulaires HTML
Formulaires HTML
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
122
Formulaires HTML
123
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
124
Formulaires HTML
</fieldset>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
125
Programmation Web
Formulaires HTML
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
Formulaires HTML
Boutons de commande
Ex.
choix 1 : <input type="checkbox" name="choix1" />
choix 2 : <input type ="checkbox" name="choix2" />
121
Ex.
Homme : <input type="radio" name="genre" value="H" />
Femme : <input type="radio" name="genre" value="F" />
http://eric.univ-lyon2.fr/~jdarmont/
126
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
21
Exemple
$nom = $_POST["nom"];
$age = $_POST["age"];
$annee = $_POST["annee"];
<?php
echo "<p>L'tudiant " . $_POST["nom"];
echo " (" . $_POST["age"] . " ans)";
echo " est en " . $_POST["annee"] . ".</p>";
?>
127
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
128
Tlchargement de fichier
Ex.
<form action="telechargement.php" method="post"
enctype="multipart/form-data" />
<fieldset>
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />
Fichier : <input name="monfichier" type="file" />
<input type="submit" value="Tlcharger" />
</fieldset>
</form>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
130
Transmission de variables
d'une page PHP une autre
http://eric.univ-lyon2.fr/~jdarmont/
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
Programmation Web
Transmission de variables
d'une page PHP une autre
131
129
http://eric.univ-lyon2.fr/~jdarmont/
Tlchargement de fichier
Programmation Web
132
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
22
Transmission de variables
d'une page PHP une autre
Sessions
<?php // suivante.php
// Mthode 1
$nom = $_POST["nom"];
$age = $_POST["age"];
Utilisations courantes :
// Mthode 2
$nom = $_GET["nom"];
$age = $_GET["age"];
?>
133
Programmation Web
134
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Sessions
Sessions
<?php
session_start();
// Enregistre la valeur de $nom dans la variable de session s_nom
$_SESSION["s_nom"] = $_POST["nom"];
?>
<!DOCTYPE html>
<html>
<head> <title>Session 2</title> </head>
<body>
<p>Identifiant de session : <?php echo session_id(); ?><br />
Nom de session : <?php echo session_name(); ?></p>
<p>Bienvenue sur ma page Web, <?php echo $_SESSION["s_nom"]; ?>.<br />
<a href="session3.php">Page suivante</a>.</p>
</body>
</html>
135
137
http://eric.univ-lyon2.fr/~jdarmont/
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
136
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
Sessions
Sessions
<?php
session_start();
$_SESSION["s_nom"] = FALSE; // Suppression de la variable de session
?>
<!DOCTYPE html>
<html>
<head> <title>Session 4</title> </head>
<body>
<p>Es-tu toujours l ?
<?php if ($_SESSION["s_nom"]) echo "Oui.";
else echo "Non."; ?>
<br /><a href="session5.php">Clore la session</a>.</p>
</body>
</html>
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
138
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
23
Sessions
Plan du cours
<?php
session_start();
session_destroy(); // Destruction de la session
?>
<!DOCTYPE html>
<html>
<head> <title>Session 5</title> </head>
<body>
<p>Session termine.</p>
</body>
</html>
139
Programmation Web
Langage HTML
lments de design Web
Feuilles de style en cascade (CSS)
Langage de script PHP
Connexion une base de donnes (MySQL)
http://eric.univ-lyon2.fr/~jdarmont/
140
Programmation Web
http://eric.univ-lyon2.fr/~jdarmont/
24