Cours PHP/MySQL
4éme partie
Séance précédente
• Projet: La création de la page d’accueil du site
• Projet: La création des autres pages statiques
• Le...
Séance d'aujourd'hui
• Projet: Listing des produits
• Projet: Listing de produits par catégorie
• Projet: Ajout de produit...
Projet: Listing des produits
4
Projet: Listing de produits par
catégorie
5
Projet: Ajout de produits au panier
6
Projet: Retirer des produits depuis le
panier
7
Les concepts fondamentaux de la
programmation orientée objet
8
La programmation fonctionnelle
• Les programmes sont composés d'une série de
fonctions, qui ensemble, assurent certains se...
La programmation orienté objet
• Les programmes sont composés de classes
représentant des entités du monde physique
(voitu...
OPP: Qu’est ce qu’une classe ?
• Une classe, est un type de données abstrait,
caractérisé par des propriétés (ses attribut...
OPP: Qu’est ce qu’un objet ?
• Un objet est une entité comportant des
frontières précises et qui possède une identité
(un ...
OPP: L'encapsulation
• L'encapsulation consiste à masquer les détails
d'implémentation d'un objet.
• L'encapsulation facil...
OPP: L'héritage
• L'héritage est un mécanisme de transmission des propriétés d'une classe
(ses attributs et ses méthodes) ...
OPP: Le polymorphisme
• Le polymorphisme représente la faculté d'une
méthode à pouvoir s'appliquer à des objets de
classes...
OPP: L'agrégation
• L'agrégation constitue une relation entre deux
classes, spécifiant que les objets d'une classe
sont de...
La programmation orientée objet en
PHP
17
Les exceptions
18
Les exceptions
• Le mécanisme des exceptions a été introduit à PHP
dans sa version 5 en complément de son nouveau
modèle o...
• La création d'une exception est réalisée par l'appel au
constructeur de la classe native Exception
<?php
// Création de ...
• Le lancement d'une exception à travers le programme est
réalisée grâce au mot-clé « throw »
<?php
if (isset($_GET['id'])...
• PHP dispose d'une structure conditionnelle capable
d'intercepter les exceptions afin de permettre
d'appliquer des traite...
Les fichiers
23
Les droits sur les fichiers
• r: Ouvre le fichier en lecture seule.
• r+: Ouvre le fichier en lecture et écriture.
• a: Ou...
<?php
$file = fopen('compteur.txt', 'r+');
fclose($file);
?>
Ouvrir et fermer un fichier
<?php
$file = fopen('compteur.txt', 'r+');
$ligne = fgets($file);
fclose($file);
?>
Lire un fichier
<?php
$file = fopen('compteur.txt', 'r+');
$pagesVues = fgets($file);
$pagesVues++;
fseek($file, 0);
fputs($file, $pagesVu...
Projet: Utilisation des concepts
orientés objet
28
Prochain SlideShare
Chargement dans…5
×

Cours php & Mysql - 4éme partie

1 872 vues

Publié le

Cours php et Mysql

Publié dans : Logiciels
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 872
Sur SlideShare
0
Issues des intégrations
0
Intégrations
911
Actions
Partages
0
Téléchargements
129
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Cours php & Mysql - 4éme partie

  1. 1. Cours PHP/MySQL 4éme partie
  2. 2. Séance précédente • Projet: La création de la page d’accueil du site • Projet: La création des autres pages statiques • Les formulaires • Sessions et cookies • L'envoi de mail • Introduction aux bases de données et au MySQL en particulier • Introduction au langage SQL • Modélisation Merise d'une base de données (Exemple de notre projet de site e-commerce) • Communiquer entre PHP et MySQL • Projet: Authentification au site • Projet: Affichage des catégories de produits
  3. 3. Séance d'aujourd'hui • Projet: Listing des produits • Projet: Listing de produits par catégorie • Projet: Ajout de produits au panier • Projet: Retirer des produits depuis le panier • Les concepts fondamentaux de la programmation orientée objet • La programmation orientée objet en PHP • Les exceptions • Les fichiers • Projet: Utilisation des concepts orientés objet
  4. 4. Projet: Listing des produits 4
  5. 5. Projet: Listing de produits par catégorie 5
  6. 6. Projet: Ajout de produits au panier 6
  7. 7. Projet: Retirer des produits depuis le panier 7
  8. 8. Les concepts fondamentaux de la programmation orientée objet 8
  9. 9. La programmation fonctionnelle • Les programmes sont composés d'une série de fonctions, qui ensemble, assurent certains services. • Son avantage principal est la factorisation des comportements. • Son défaut principal est la complexité de maintenance du code dus au chaînage des fonctions à cause de la factorisation des comportements. 9
  10. 10. La programmation orienté objet • Les programmes sont composés de classes représentant des entités du monde physique (voiture, livre,…etc) • Ses avantages: facilité d'organisation, réutilisation, facilité de correction, facilite la conception car elle décrit les entités comme dans le monde réel. 10
  11. 11. OPP: Qu’est ce qu’une classe ? • Une classe, est un type de données abstrait, caractérisé par des propriétés (ses attributs et ses méthodes) communes à des objets et elle permet de créer des objets possédant ces propriétés. 11
  12. 12. OPP: Qu’est ce qu’un objet ? • Un objet est une entité comportant des frontières précises et qui possède une identité (un nom). • De plus, un ensemble d'attributs caractérisent l'état d'un objet, et l'on dispose d'un ensemble d'opérations (les méthodes) qui permettent d'agir sur le comportement de l'objet. • Un objet est l'instance d'une classe 12
  13. 13. OPP: L'encapsulation • L'encapsulation consiste à masquer les détails d'implémentation d'un objet. • L'encapsulation facilite l'évolution d'une application car elle stabilise l'évolution des objets. • Elle garantit de plus l'intégrité des données vu qu'elle permet d'interdire l'accès direct aux attributs des objets (on doit alors passer par des assesseurs). • Un assesseur étant une méthode d'accès pour connaître ou modifier la valeur d'un attribut d'un objet. 13
  14. 14. OPP: L'héritage • L'héritage est un mécanisme de transmission des propriétés d'une classe (ses attributs et ses méthodes) vers une sous-classe (la sous-classe héritant de la classe principale). • Grâce à l'héritage, une classe peut aussi être spécialisée en d'autres classes, afin d'y ajouter des caractéristiques spécifiques (ajout de méthodes par exemple) ou d'en adapter certaines. • Plusieurs classes peuvent aussi être généralisées en une classe qui les factorise, et ce, afin de regrouper les caractéristiques communes d'un ensemble de classes. • La spécialisation et la généralisation permettent de construire des hiérarchies de classes. • L'avantage principal de l'héritage est qu'il vous permet de d'éviter la duplication de code, et il encourage à la réutilisation de même code. 14
  15. 15. OPP: Le polymorphisme • Le polymorphisme représente la faculté d'une méthode à pouvoir s'appliquer à des objets de classes différentes. Il augmente donc la généricité du code. 15
  16. 16. OPP: L'agrégation • L'agrégation constitue une relation entre deux classes, spécifiant que les objets d'une classe sont des composants de l'autre classe. • Une relation d'agrégation permet donc de définir des objets composés d'autres objets. • L'agrégation permet d'assembler des objets de base, afin de construire des objets plus complexes. 16
  17. 17. La programmation orientée objet en PHP 17
  18. 18. Les exceptions 18
  19. 19. Les exceptions • Le mécanisme des exceptions a été introduit à PHP dans sa version 5 en complément de son nouveau modèle orienté objet. • Les exceptions permettent de simplifier, personnaliser et d'organiser la gestion des erreurs dans un programme. • Le mot « erreurs » ne signifie pas « bug », qui est un comportement anormal de l'application développée, mais plutôt un cas exceptionnel à traiter différemment dans le déroulement du programme. 19
  20. 20. • La création d'une exception est réalisée par l'appel au constructeur de la classe native Exception <?php // Création de l'objet Exception $e = new Exception("Une erreur s'est produite"); // Affiche le message d'erreur echo $e->getMessage(); ?> Générer une exception
  21. 21. • Le lancement d'une exception à travers le programme est réalisée grâce au mot-clé « throw » <?php if (isset($_GET['id']) && ! (int)$_GET['id']) { throw new Exception('Le paramètre id doit être un entier !'); } /* Cette ligne ne sera jamais exécutée car une exception est lancée pour interrompre l'exécution normale du programme */ echo 'Bonjour !'; ?> Lancer une exception à travers le programme
  22. 22. • PHP dispose d'une structure conditionnelle capable d'intercepter les exceptions afin de permettre d'appliquer des traitements particuliers. <?php try { if (isset($_GET['id']) && ! (int)$_GET['id']) { throw new Exception('Le paramètre id doit être un entier !'); } echo 'Bonjour !'; } catch(Exception $e) { echo "L'erreur suivante a été générée: <br>"; echo $e->getMessage(); } ?> Intercepter / attraper une exception générée
  23. 23. Les fichiers 23
  24. 24. Les droits sur les fichiers • r: Ouvre le fichier en lecture seule. • r+: Ouvre le fichier en lecture et écriture. • a: Ouvre le fichier en écriture seule et si le fichier n'existe pas, il est automatiquement créé. • a+: Ouvre le fichier en lecture et écriture. Si le fichier n'existe pas, il est créé automatiquement. 24
  25. 25. <?php $file = fopen('compteur.txt', 'r+'); fclose($file); ?> Ouvrir et fermer un fichier
  26. 26. <?php $file = fopen('compteur.txt', 'r+'); $ligne = fgets($file); fclose($file); ?> Lire un fichier
  27. 27. <?php $file = fopen('compteur.txt', 'r+'); $pagesVues = fgets($file); $pagesVues++; fseek($file, 0); fputs($file, $pagesVues); fclose($file); echo '<p>Cette page a été vue ' . $pagesVues . ' fois !</p>'; ?> Ecrire dans un fichier
  28. 28. Projet: Utilisation des concepts orientés objet 28

×