Vous êtes sur la page 1sur 17

Cration de site web

Sites web MVC


Damien Nouvel
Licence Math/Info - L1
Damien Nouvel
Cration de site web
2 / 17
Sites web MVC
lan

!rchitecture M"C

Mod#le / base de donnes

"ues / interface

Contr$leur / a%%lication
Licence Math/Info - L1
Damien Nouvel
Cration de site web
& / 17
Sites web MVC
lan

!rchitecture M"C

Mod#le / base de donnes

"ues / interface

Contr$leur / a%%lication
Licence Math/Info - L1
Damien Nouvel
Cration de site web
' / 17
Sites web MVC
!rchitecture M"C

M"C

Mthode de conce%tion d(Interface )omme Machine *I)M+


*,eens-au./ 1070+

Mod#le 1 "ue - Contr$leur

Mod#le3 .estion des donnes et des fonction %our 4 accder

Couche de %ersistance des donnes

"ue3 afficha.e des donnes

Interfaces avec l(utilisateur

Contr$leur3 s4nchronisation entre la vue et les donnes

!%%lication/ traitements/ flu5 de donnes

"ue ind%endante des donnes *6 trois-tiers/ couches+

7ava *8win./ 89:/ 8%rin./ 8truts+/ ) *84mfon4/ Ca-e/ ;end+/


4thon *D<an.o/ :urbo.ears+/ =lash *=le5+/ ,ub4 *,ails+
Licence Math/Info - L1
Damien Nouvel
Cration de site web
> / 17
Sites web MVC
!rchitecture M"C

8chma de fonctionnement
Vue Contrleur Modle
Licence Math/Info - L1
Damien Nouvel
Cration de site web
? / 17
Sites web MVC
lan

!rchitecture M"C

Mod#le / base de donnes

"ues / interface

Contr$leur / a%%lication
Licence Math/Info - L1
Damien Nouvel
Cration de site web
7 / 17
Sites web MVC
Mod#le / base de donnes

Mod#le *de donnes+

Descri%tion des @ob<etsA mani%uls %ar le s4st#me

ersonnes/ v#nements/ %roduits/ instruments/ etcB

Couche de %ersistance

Case de donnes

=ichiers *DML/ C8"BBB+

Moteur de %ersistance

=onctions de mani%ulation des ob<ets

Liste/ lecture/ criture

=onctions @standardA Eui %euvent %otentiellement Ftre


a%%liEues G tous les ob<ets

Interface entre le lan.a.e *7ava/ h/ BNetBBB+ et les donnes

H%timisation en lecture/ droits d(acc#s en criture/ etcB


Licence Math/Info - L1
Damien Nouvel
Cration de site web
I / 17
Sites web MVC
Mod#le / base de donnes

Cases de donnes

Jestion des donnes standardise

8tructuration des donnes sous formes d(@ob<etsA

ChaEue ob<et est dfini %ar un ensemble d( @attributsA

Les ob<ets %euvent corres%ondre au5 classes du lan.a.e

Des associations %euvent Ftre faites entre les ob<ets


Clients Produits
Magasins
Fournisseurs
Licence Math/Info - L1
Damien Nouvel
Cration de site web
0 / 17
Sites web MVC
Mod#le / base de donnes

Cases de donnes *suite+

Case de donnes @relationnelleA

Hb<ets dcrits %ar des @tablesA *tableau K5cel+

ChaEue attribut est une colonne

:4%e3 entier/ chaLne/ boolen/ etcB

Hb<ets identifis %ar des @clsA

Inde5ation %our acc#s ra%ide au5 donnes/ associations entre donnes


ID Nom Prnom Email Magasin Newsletter ...
1 Nouvel Damien nouvel@... 3 o
Du!ond "oger r.du!@... n
3 #mit$ %o& ... ' n
( Colas "gis ... 3 o
...
Licence Math/Info - L1
Damien Nouvel
Cration de site web
1M / 17
Sites web MVC
Mod#le / base de donnes

Cases de donnes *suite+

Lan.a.e de @reEuFteA sur la base de donnes

8NL3 8tructured Nuer4 Lan.ua.e *Chamberlain O Co4ce/ 107M+

K5em%le classiEue en h / M4sNL


// Conne5ion G la base de donnes
m4sElPconnect*(localhost(/ (lo.in(/ (%assword(+Q
m4sElPselectPdb*(nomPdePlaPbase(/Rdb+Q
// ,eEuFte 8NL
Rres S m4sElPEuer4*(8KLKC: %renom/ nom =,HM client(+Q
// :raitement des rsultats
while*Rclient S m4sElPfetchPassoc*Rres++T
echo (Client(BRclientU(%renom(VB( (BRclientU(nom(VQ
BBB
W
Licence Math/Info - L1
Damien Nouvel
Cration de site web
11 / 17
Sites web MVC
lan

!rchitecture M"C

Mod#le / base de donnes

"ues / interface

Contr$leur / a%%lication
Licence Math/Info - L1
Damien Nouvel
Cration de site web
12 / 17
Sites web MVC
"ues / interface

Xtilisation de @tem%latesA

rsentation des donnes

Xtilisation des inclusions %our assembler la %a.e

Dfinit les %ossibilits d(interaction avec l(utilisateur

Liens/ formulaires/ %a.ination/ etcB

eut-Ftre d%endante des ob<ets G afficher

Liste des clients/ fournisseurs/ ma.asins

Dtail d(un client/ fournisseur/ ma.asin

=ormulaire %our modifier un client/ fournisseur/ ma.asin

eut faire a%%el G des lments .nriEues

Liste d(ob<ets *avec %a.ination+

Ylment de formulaire
Licence Math/Info - L1
Damien Nouvel
Cration de site web
1& / 17
Sites web MVC
"ues / interface

Xtilisation de @tem%latesA *suite+

ro.rammation de l(interface

K5em%le classiEue en h
Zul[
Z\%h% foreach*Rob<ets as Rob<et+T \[
Zli[(
Zim. classS]ima.e] srcS]Z\%h% echo Rob<etU(ima.e(VQ \[] /[
Z% classS]titre][Z\%h% echo Rob<etU(nom(VQ \[Z/%[
Z% classS]resume][Z\%h% echo Rob<etU(descri%tion(VQ\[Z/%[
Za classS]detail] hrefS]Z\%h% echo Rob<etU(lien(VQ \[][DtailsZ/a[
Z/li[
Z\%h% W \[
Z/ul[
Licence Math/Info - L1
Damien Nouvel
Cration de site web
1' / 17
Sites web MVC
lan

!rchitecture M"C

Mod#le / base de donnes

"ues / interface

Contr$leur / a%%lication
Licence Math/Info - L1
Damien Nouvel
Cration de site web
1> / 17
Sites web MVC
Contr$leur / a%%lication

Le contr$leur tient com%te des v#nements

8elon les interactions %ossibles avec l(interface

Lien entre la vue et les donnes

ar e5B3

L(utilisateur demande une %a.e3

8lectionner les donnes dans la base %our alimenter le mod#le

asser les lments du mod#le au5 vues corres%ondant G la %a.e

L(utilisateur demande une liste de %roduits3

8lectionner les %roduits dans la base de donnes

:rier les %roduits *ordre %ar dfaut ou demand %ar l(utilisateur+

asser les ob<ets G la vue @listeA

L(utilisateur valide un formulaire %our un %roduit

Demander au mod#le de mettre G <our / insrer le %roduit

!ller vers la vue succ#s / erreur


Licence Math/Info - L1
Damien Nouvel
Cration de site web
1? / 17
Sites web MVC
Contr$leur / a%%lication

Le contr$leur dfinit l(a%%lication

=lu5 des donnes

Chan.ements de vues / de %a.es

De mani#re classiEue/ %rinci%ales %a.es3

Ddies *%a.e d(accueil/ contact/ etcB+

Le @contenuA *section du site/ article+

Les listes d(ob<ets3

Mcanisme de liste %a.ine

!fficha.e d(lment de liste selon l(ob<et

Liens selon les droits *lecture/ criture/ su%%ression+

Le dtail d(un ob<et *s%cifiEue+

La modification d(un ob<et

MFme vue %our l(insertion ou la modification


Licence Math/Info - L1
Damien Nouvel
Cration de site web
17 / 17
Sites web MVC
Contr$leur / a%%lication

Interactions com%le5es avec mod#le / vues

ar e5B3
if*Rvue SS (liste-%roduits(+T
R%roduits S modele-[.etroduits*Rcriteres+Q
vuePcentrale-[afficherListe*R%roduits+Q
boitesPdroite-[listeCourte*R%roduits-[%roduitsLies*++Q
if*Rutilisateur-[isClient*++T
boitesPdroite-[a<outerromos*+Q
W
if*Rvue SS (detail-%roduit(+T
R%roduit S modele-[.etroduit*Rid+Q
vuePcentrale-[afficherKlement*R%roduit+Q
boitesPdroite-[listeCourte*R%roduit-[accessoires*++Q
W