Loading src/model/categorieManager.php +24 −1 Original line number Diff line number Diff line Loading @@ -18,6 +18,29 @@ class CategorieManager extends Manager{ * @return array un tableau contenant les noms de catégorie (string) */ public function getCategories(): array{ throw new Exception('not implemented yet'); $requete = "SELECT CAT_INTITULE FROM CUI_CATEGORIE"; $resultat = self::projectionBdd($requete); $categories = []; foreach($resultat as $ligne){ $categories[] = $ligne['CAT_INTITULE']; } return $categories; } public function getCodeCategorie(string $intitule): ?string { $requete = "SELECT CAT_CODE FROM CUI_CATEGORIE WHERE lower(CAT_INTITULE) = lower('$intitule')"; $resultat = self::projectionBdd($requete); if(count($resultat) === 0){ return null; } return $resultat[0]["CAT_CODE"]; } } No newline at end of file src/model/ingredientManager.php +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ require_once 'src/model/ingredient.php'; class IngredientManager extends Manager{ private function ingredientFromLigne(array $ligne): Ingredient{ $id = $ligne['ING_ID']; $id = strval($ligne['ING_ID']); $intitule = $ligne['ING_INTITULE']; $description = $ligne['ING_DESCRIPTION']; if(is_null($description)){ Loading src/model/recette.php +2 −3 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ declare(strict_types=1); require_once 'src/model/utilisateur.php'; require_once 'src/model/tag.php'; require_once 'src/model/tagManager.php'; require_once 'src/model/ingredient.php'; Loading Loading @@ -47,7 +46,7 @@ class Recette { * @param string $date_creation date de création de la recettte (seulement pour la lecture) * @param string $date_modification date de la dernière modification (seulement pour la lecture) */ public function __construct(string $titre, string $contenu, string $resume, string $image, string $statut, string $idAuteur, string $codeCategorie, string $id = "", string $pseudoAuteur = "", string $date_creation = "", string $date_modification = ""){$this->id = $id;$this->titre = $titre;$this->contenu = $contenu;$this->resume = $resume;$this->image = $image;$this->date_creation = $date_creation;$this->date_modification = $date_modification;$this->statut = $statut;$this->idAuteur = $idAuteur;$this->pseudoAuteur = $pseudoAuteur;$this->categorie = $codeCategorie;} public function __construct(string $titre, string $contenu, string $resume, string $image, string $statut, string $idAuteur, string $categorie, string $id = "", string $pseudoAuteur = "", string $date_creation = "", string $date_modification = ""){$this->id = $id;$this->titre = $titre;$this->contenu = $contenu;$this->resume = $resume;$this->image = $image;$this->date_creation = $date_creation;$this->date_modification = $date_modification;$this->statut = $statut;$this->idAuteur = $idAuteur;$this->pseudoAuteur = $pseudoAuteur;$this->categorie = $categorie;} /** * Renvoie l'id de la recette. Loading Loading @@ -130,7 +129,7 @@ class Recette { * @see Utilisateur */ public function getAuteur(): Utilisateur{ throw new Exception("not implemented yet"); return (new UtilisateurManager)->getUtilisateur($this->idAuteur); } /** Loading src/model/recetteManager.php +84 −44 Original line number Diff line number Diff line Loading @@ -6,24 +6,49 @@ require_once 'src/model/manager.php'; require_once 'src/model/recette.php'; require_once 'src/model/tag.php'; require_once 'src/model/ingredient.php'; require_once 'src/model/categorieManager.php'; /** * Classe utilitaire permettant de gérer les recettes de la base (CRUD). * * @see Recette * * @author Julien Ait azzouzene <julien.aitazzouzene@etu.unicaen.fr> * @author Julien Ait azzouzene <julien.aitazzouzene@etu.unicaen.fr>, * Guilhem Saint Gaudin <guilhem.saint-gaudin@etu.unicaen.fr> */ class RecetteManager extends Manager { private function recetteFromLigne(array $ligne): Recette { $id = strval($ligne['REC_ID']); $titre = $ligne['REC_TITRE']; $resume = $ligne['REC_RESUME']; $contenu = $ligne['REC_CONTENU']; $image = $ligne['REC_IMAGE']; $date_creation = $ligne['REC_DATE_CREATION']; $statut = $ligne['REC_STATUT']; $categorie = $ligne['CAT_INTITULE']; $idAuteur = strval($ligne['UTIL_ID']); $pseudoAuteur = $ligne['UTIL_PSEUDO']; $date_modification = $ligne['REC_DATE_MODIFICATION']; if(is_null($date_modification)){ $date_modification = ''; } return new Recette($titre, $contenu, $resume, $image, $statut, $idAuteur, $categorie, $id, $pseudoAuteur, $date_creation, $date_modification); } /** * Renvoie une recette en fonction de son id. * @param string $id * @return ?Recette */ public function getRecette(string $id) : ?Recette{ $requete = "SELECT * FROM CUI_RECETTE WHERE rec_id='$id'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE rec_id='$id'"; $resultat = self::projectionBdd($requete); if(! isset($resultat[0])) { Loading @@ -32,10 +57,7 @@ class RecetteManager extends Manager { $ligne = $resultat[0]; var_dump($ligne); return new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); return self::recetteFromLigne($ligne); } /** Loading @@ -43,13 +65,17 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getRecettes(): array{ $requete = "SELECT * FROM CUI_RECETTE ORDER BY REC_DATE_CREATION DESC"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) ORDER BY REC_DATE_CREATION DESC"; $resultat = self::projectionBdd($requete); $recettes = []; foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -63,22 +89,19 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getDernieresRecettes(int $nombre): array{ $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) ORDER BY REC_DATE_CREATION DESC LIMIT $nombre"; $requete = "SELECT * FROM (SELECT * FROM CUI_RECETTE ORDER BY DATE_MODIFICATION) WHERE ROWID <= $nombre"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } var_dump($recettes); return $recettes; } Loading @@ -89,17 +112,16 @@ class RecetteManager extends Manager { */ public function getRecettesNonValidees(): array{ $requete = "SELECT * FROM CUI_RECETTE WHERE REC_STATUT != 'V'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE REC_STATUT != 'V'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -112,18 +134,16 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getParCategorie(string $categorie): array{ $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE CAT_INTITULE = '$categorie'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING(CAT_CODE) WHERE CAT_INTITULE = '$categorie'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading Loading @@ -157,17 +177,15 @@ class RecetteManager extends Manager { */ public function getParUtilisateur(string $idUtilisateur): array{ $requete = "SELECT * FROM CUI_RECETTE WHERE UTIL_ID = '$idUtilisateur'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE UTIL_ID = '$idUtilisateur'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -175,15 +193,33 @@ class RecetteManager extends Manager { } /** * Insert une recette dans la base de données. * Insère une recette dans la base de données. * @param Recette $recette * @return void */ public function creerRecette(Recette $recette): void{ $categorie = (new CategorieManager)->getCodeCategorie($recette->getCategorie()); if(is_null($categorie)){ throw new InvalidArgumentException("Cette catégorie n'existe pas : ".$recette->getCategorie()); } throw new Exception('not implemented yet'); $requete = "INSERT INTO CUI_RECETTE (REC_TITRE, REC_CONTENU, REC_RESUME, REC_IMAGE, REC_DATE_CREATION, REC_STATUT, CAT_CODE, UTIL_ID) VALUES (?, ?, ?, ?, NOW(), ?, ?, ?)"; $parametres[0] = $recette->getTitre(); $parametres[1] = $recette->getContenu(); $parametres[2] = $recette->getResume(); $parametres[3] = $recette->getImage(); $parametres[4] = $recette->estValide() ? 'V' : 'A'; $parametres[5] = $categorie; $parametres[6] = $recette->getIdAuteur(); if(self::requetePrepare($requete, $parametres) != 1){ throw new Exception("Échec pendant la création de recette."); } } /** Loading @@ -204,7 +240,11 @@ class RecetteManager extends Manager { * @param Recette $recette la recette à supprimer */ public function supprimerRecette(Recette $recette): void{ throw new Exception('not implemented yet'); $requete = "DELETE FROM CUI_RECETTE WHERE REC_ID = ?"; if(self::requetePrepare($requete, [$recette->getId()]) != 1){ throw new Exception("Échec de la suppression de recette."); } } /** Loading src/model/tag.php +1 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ class Tag{ */ public function __construct(string $intitule, string $id = "", string $description = ""){$this->id = $id;$this->intitule = $intitule;$this->description = $description;} /** * Renvoie l'id du tag. * @return string Loading Loading
src/model/categorieManager.php +24 −1 Original line number Diff line number Diff line Loading @@ -18,6 +18,29 @@ class CategorieManager extends Manager{ * @return array un tableau contenant les noms de catégorie (string) */ public function getCategories(): array{ throw new Exception('not implemented yet'); $requete = "SELECT CAT_INTITULE FROM CUI_CATEGORIE"; $resultat = self::projectionBdd($requete); $categories = []; foreach($resultat as $ligne){ $categories[] = $ligne['CAT_INTITULE']; } return $categories; } public function getCodeCategorie(string $intitule): ?string { $requete = "SELECT CAT_CODE FROM CUI_CATEGORIE WHERE lower(CAT_INTITULE) = lower('$intitule')"; $resultat = self::projectionBdd($requete); if(count($resultat) === 0){ return null; } return $resultat[0]["CAT_CODE"]; } } No newline at end of file
src/model/ingredientManager.php +1 −1 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ require_once 'src/model/ingredient.php'; class IngredientManager extends Manager{ private function ingredientFromLigne(array $ligne): Ingredient{ $id = $ligne['ING_ID']; $id = strval($ligne['ING_ID']); $intitule = $ligne['ING_INTITULE']; $description = $ligne['ING_DESCRIPTION']; if(is_null($description)){ Loading
src/model/recette.php +2 −3 Original line number Diff line number Diff line Loading @@ -2,7 +2,6 @@ declare(strict_types=1); require_once 'src/model/utilisateur.php'; require_once 'src/model/tag.php'; require_once 'src/model/tagManager.php'; require_once 'src/model/ingredient.php'; Loading Loading @@ -47,7 +46,7 @@ class Recette { * @param string $date_creation date de création de la recettte (seulement pour la lecture) * @param string $date_modification date de la dernière modification (seulement pour la lecture) */ public function __construct(string $titre, string $contenu, string $resume, string $image, string $statut, string $idAuteur, string $codeCategorie, string $id = "", string $pseudoAuteur = "", string $date_creation = "", string $date_modification = ""){$this->id = $id;$this->titre = $titre;$this->contenu = $contenu;$this->resume = $resume;$this->image = $image;$this->date_creation = $date_creation;$this->date_modification = $date_modification;$this->statut = $statut;$this->idAuteur = $idAuteur;$this->pseudoAuteur = $pseudoAuteur;$this->categorie = $codeCategorie;} public function __construct(string $titre, string $contenu, string $resume, string $image, string $statut, string $idAuteur, string $categorie, string $id = "", string $pseudoAuteur = "", string $date_creation = "", string $date_modification = ""){$this->id = $id;$this->titre = $titre;$this->contenu = $contenu;$this->resume = $resume;$this->image = $image;$this->date_creation = $date_creation;$this->date_modification = $date_modification;$this->statut = $statut;$this->idAuteur = $idAuteur;$this->pseudoAuteur = $pseudoAuteur;$this->categorie = $categorie;} /** * Renvoie l'id de la recette. Loading Loading @@ -130,7 +129,7 @@ class Recette { * @see Utilisateur */ public function getAuteur(): Utilisateur{ throw new Exception("not implemented yet"); return (new UtilisateurManager)->getUtilisateur($this->idAuteur); } /** Loading
src/model/recetteManager.php +84 −44 Original line number Diff line number Diff line Loading @@ -6,24 +6,49 @@ require_once 'src/model/manager.php'; require_once 'src/model/recette.php'; require_once 'src/model/tag.php'; require_once 'src/model/ingredient.php'; require_once 'src/model/categorieManager.php'; /** * Classe utilitaire permettant de gérer les recettes de la base (CRUD). * * @see Recette * * @author Julien Ait azzouzene <julien.aitazzouzene@etu.unicaen.fr> * @author Julien Ait azzouzene <julien.aitazzouzene@etu.unicaen.fr>, * Guilhem Saint Gaudin <guilhem.saint-gaudin@etu.unicaen.fr> */ class RecetteManager extends Manager { private function recetteFromLigne(array $ligne): Recette { $id = strval($ligne['REC_ID']); $titre = $ligne['REC_TITRE']; $resume = $ligne['REC_RESUME']; $contenu = $ligne['REC_CONTENU']; $image = $ligne['REC_IMAGE']; $date_creation = $ligne['REC_DATE_CREATION']; $statut = $ligne['REC_STATUT']; $categorie = $ligne['CAT_INTITULE']; $idAuteur = strval($ligne['UTIL_ID']); $pseudoAuteur = $ligne['UTIL_PSEUDO']; $date_modification = $ligne['REC_DATE_MODIFICATION']; if(is_null($date_modification)){ $date_modification = ''; } return new Recette($titre, $contenu, $resume, $image, $statut, $idAuteur, $categorie, $id, $pseudoAuteur, $date_creation, $date_modification); } /** * Renvoie une recette en fonction de son id. * @param string $id * @return ?Recette */ public function getRecette(string $id) : ?Recette{ $requete = "SELECT * FROM CUI_RECETTE WHERE rec_id='$id'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE rec_id='$id'"; $resultat = self::projectionBdd($requete); if(! isset($resultat[0])) { Loading @@ -32,10 +57,7 @@ class RecetteManager extends Manager { $ligne = $resultat[0]; var_dump($ligne); return new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); return self::recetteFromLigne($ligne); } /** Loading @@ -43,13 +65,17 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getRecettes(): array{ $requete = "SELECT * FROM CUI_RECETTE ORDER BY REC_DATE_CREATION DESC"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) ORDER BY REC_DATE_CREATION DESC"; $resultat = self::projectionBdd($requete); $recettes = []; foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -63,22 +89,19 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getDernieresRecettes(int $nombre): array{ $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) ORDER BY REC_DATE_CREATION DESC LIMIT $nombre"; $requete = "SELECT * FROM (SELECT * FROM CUI_RECETTE ORDER BY DATE_MODIFICATION) WHERE ROWID <= $nombre"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } var_dump($recettes); return $recettes; } Loading @@ -89,17 +112,16 @@ class RecetteManager extends Manager { */ public function getRecettesNonValidees(): array{ $requete = "SELECT * FROM CUI_RECETTE WHERE REC_STATUT != 'V'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE REC_STATUT != 'V'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -112,18 +134,16 @@ class RecetteManager extends Manager { * @return array un tableau d'objets Recette */ public function getParCategorie(string $categorie): array{ $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE CAT_INTITULE = '$categorie'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING(CAT_CODE) WHERE CAT_INTITULE = '$categorie'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading Loading @@ -157,17 +177,15 @@ class RecetteManager extends Manager { */ public function getParUtilisateur(string $idUtilisateur): array{ $requete = "SELECT * FROM CUI_RECETTE WHERE UTIL_ID = '$idUtilisateur'"; $requete = "SELECT * FROM CUI_RECETTE JOIN CUI_CATEGORIE USING (CAT_CODE) JOIN CUI_UTILISATEUR USING (UTIL_ID) WHERE UTIL_ID = '$idUtilisateur'"; $resultat = self::projectionBdd($requete); $recettes = []; if(! isset($resultat[0])) { return null; } foreach($resultat as $ligne){ $recettes[] = new Recette($ligne['REC_ID'], $ligne['REC_TITRE'], $ligne['REC_CONTENU'], $ligne['REC_RESUME'], $ligne['REC_IMAGE'], $ligne['REC_DATE_CREATION'], $ligne['REC_DATE_MODIFICATION'], $ligne['REC_STATUT'], $ligne['UTIL_ID'], $ligne['CAT_CODE']); $recettes[] = self::recetteFromLigne($ligne); } return $recettes; Loading @@ -175,15 +193,33 @@ class RecetteManager extends Manager { } /** * Insert une recette dans la base de données. * Insère une recette dans la base de données. * @param Recette $recette * @return void */ public function creerRecette(Recette $recette): void{ $categorie = (new CategorieManager)->getCodeCategorie($recette->getCategorie()); if(is_null($categorie)){ throw new InvalidArgumentException("Cette catégorie n'existe pas : ".$recette->getCategorie()); } throw new Exception('not implemented yet'); $requete = "INSERT INTO CUI_RECETTE (REC_TITRE, REC_CONTENU, REC_RESUME, REC_IMAGE, REC_DATE_CREATION, REC_STATUT, CAT_CODE, UTIL_ID) VALUES (?, ?, ?, ?, NOW(), ?, ?, ?)"; $parametres[0] = $recette->getTitre(); $parametres[1] = $recette->getContenu(); $parametres[2] = $recette->getResume(); $parametres[3] = $recette->getImage(); $parametres[4] = $recette->estValide() ? 'V' : 'A'; $parametres[5] = $categorie; $parametres[6] = $recette->getIdAuteur(); if(self::requetePrepare($requete, $parametres) != 1){ throw new Exception("Échec pendant la création de recette."); } } /** Loading @@ -204,7 +240,11 @@ class RecetteManager extends Manager { * @param Recette $recette la recette à supprimer */ public function supprimerRecette(Recette $recette): void{ throw new Exception('not implemented yet'); $requete = "DELETE FROM CUI_RECETTE WHERE REC_ID = ?"; if(self::requetePrepare($requete, [$recette->getId()]) != 1){ throw new Exception("Échec de la suppression de recette."); } } /** Loading
src/model/tag.php +1 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,6 @@ class Tag{ */ public function __construct(string $intitule, string $id = "", string $description = ""){$this->id = $id;$this->intitule = $intitule;$this->description = $description;} /** * Renvoie l'id du tag. * @return string Loading