La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Développement dapplications web Les données 1. Besoins Conserver certaines données Informations sur les utilisateurs, articles, commentaires Pouvoir modifier.

Présentations similaires


Présentation au sujet: "Développement dapplications web Les données 1. Besoins Conserver certaines données Informations sur les utilisateurs, articles, commentaires Pouvoir modifier."— Transcription de la présentation:

1 Développement dapplications web Les données 1

2 Besoins Conserver certaines données Informations sur les utilisateurs, articles, commentaires Pouvoir modifier ces données Corrections, etc. Pouvoir supprimer certaines données 2

3 Bases de données relationnelles Permettent la gestion des données Permettent détablir des liens entre les données Les données sont stockées sous forme de « tables », pas sous forme dobjets 3

4 Fonctionnement Chaque table représente un type de donnée Utilisateur, articles, etc. Chaque champs de la table représente un propriété de la donnée Nom, prénom, date de naissance, login, mot de passe, etc. 4

5 Exemple IdNomPrénomLoginPasswordRole 0JohnDoeJdoeaDZ!ko1 … admin ……………… ……………… Users 5

6 Fonctionnement Si on veut ajouter des adresses à nos utilisateur ? Une adresse est composée de plusieurs chose Numéro, rue, ville, code postal, … Un utilisateur peut avoir plusieurs adresses => Il faut créer une table pour stocker les adresses. 6

7 Fonctionnement IdNuméroRueCPVillePaysNom 042Dufour75000ParisFranc e Personnelle ………………… ………………… 7 Adresses

8 Fonctionnement Comment savoir à quel utilisateur correspond une adresse ? Il faut ajouter un champs dans la table adresse contenant lId de lutilisateur à qui appartient ladresse. On parle de clé étrangère 8 IdUser_i d NuméroRueCPVillePaysNom 0542Dufour75000ParisFranc e Personnelle …………………… ……………………

9 Fonctionnement Toute action sur la base se fait via SQL SQL = Structured Query Language Ex: CREATE TABLE users; SELECT login,password FROM users WHERE login=Jdoe … 9

10 Systèmes existant MySQL PostgreSQL Oracle Etc. 10

11 Utilisation Les langages nous fournissent des fonctions permettant: De se connecter au système de gestion de la base de donnée Denvoyer une requête SQL et den récupérer le résultat De se déconnecter du système de gestion de la base de donnée 11

12 Utilisation: php Lancienne méthode: 12

13 Utilisation: php La nouvelle méthode: 13

14 Problème On récupère les données sous forme de tableau [Id: 1, Nom: Doe, Prénom: John, …] Nous voulons utiliser des objets 14

15 Solutions Le PDO le permet: 15

16 Limitations Si notre objet contient une liste dautres objets Ex: Un utilisateur avec plusieurs adresses On utilise alors une autre table pour récupérer les adresses Il faudra aller chercher les adresses à laide dune autre requête soi-même et mettre à jour lobjet user. Linterface PDO ne permet de sauvegarder directement un objet dans la base de donnée 16

17 Les ORM ORM = Object Relational Maping Servent à faire le lien entre la base de données et nos objets représentant les données dans notre code Prennent en charge la création, la modification et la suppression dobjets Permettent la gestion dobjets complexes Notre utilisateur avec plusieurs adresses par exemple 17

18 Étude de cas Les articles de blog et leurs commentaires. Article: Id Titre Auteur Contenu Commentaires Date de création Date de mise à jour 18

19 Étude de cas Commentaire Id Auteur Commentaire Approuvé Article Date de création Date de mise à jour 19

20 Lien entre les objets Un article contient plusieurs commentaires On parle de relation one to many Chaque commentaire est associé à un unique article On parle de relation many to one 20

21 Définition des objets 21

22 Définition des objets 22

23 Définition des objets 23

24 Définition des objets 24

25 Définition des objets 25

26 Définition des objets 26

27 Définition des objets 27

28 Définition des objets 28

29 Définition des objets 29

30 Création des tables dans la base de données Une simple commande de la console symfony nous permet de créer nos tables: Si nous changeons plus tard des champs dans une classe, la base de données peut-être mise à jour via la commande: 30 php app/console doctrine:database:create php app/console doctrine:schema:update --force

31 Création dun objet et stockage en base de données 31

32 Avantages On ne fait plus de requêtes directement sur la base de données On récupère toujours des objets consistant et de classes que lon a défini On peut utiliser une conception objet de manière native 32

33 Questions ? 33


Télécharger ppt "Développement dapplications web Les données 1. Besoins Conserver certaines données Informations sur les utilisateurs, articles, commentaires Pouvoir modifier."

Présentations similaires


Annonces Google