diff --git a/TP4/ex1/controller/ControleurAdherent.php b/TP4/ex1/controller/ControleurAdherent.php index 1cb10daee0aa30255db17f085eb682fb7faa6c5f..b4900c608c4147057656cf64702924ffce00eba0 100644 --- a/TP4/ex1/controller/ControleurAdherent.php +++ b/TP4/ex1/controller/ControleurAdherent.php @@ -6,6 +6,15 @@ class ControleurAdherent public static function lireAdherents() { $adherents = Adherent::getAllAdherents(); - return view('adherents.liste-adherents', ['adherents' => $adherents]); + return view('adherents.les-adherents', ['adherents' => $adherents]); + } + + public static function lireAdherent() + { + if (empty($_GET["login"])) { + die("Le paramètre login n'est pas spécifié."); + } + $adherent = Adherent::getAdherentByLogin($_GET["login"]); + return view('adherents.un-adherent', ['adherent' => $adherent]); } } \ No newline at end of file diff --git a/TP4/ex1/controller/ControleurAuteur.php b/TP4/ex1/controller/ControleurAuteur.php index 304477314df310a973a2d2f5e839919dc6c58642..9a80bab36ca2a4bd322bf4f221c26894b322ea9e 100644 --- a/TP4/ex1/controller/ControleurAuteur.php +++ b/TP4/ex1/controller/ControleurAuteur.php @@ -6,7 +6,7 @@ class ControleurAuteur public static function lireAuteurs() { $auteurs = Auteur::getAllAuteurs(); - return view('auteurs.liste-auteurs', ['auteurs' => $auteurs]); + return view('auteurs.les-auteurs', ['auteurs' => $auteurs]); } public static function lireAuteur() @@ -15,7 +15,7 @@ class ControleurAuteur die("Le paramètre numAuteur n'est pas spécifié."); } $auteur = Auteur::getAuteurByNum($_GET["numAuteur"]); - return view('auteurs.auteur-info', ['auteur' => $auteur]); + return view('auteurs.un-auteur', ['auteur' => $auteur]); } } diff --git a/TP4/ex1/models/Adherent.php b/TP4/ex1/models/Adherent.php index 13026fb49af7d3cd19427a1dc14368a40816ec26..9b09e4c2bad3d41fc3a2d6004219117eb65f0ae9 100644 --- a/TP4/ex1/models/Adherent.php +++ b/TP4/ex1/models/Adherent.php @@ -33,15 +33,6 @@ class Adherent $this->numCategorie = $numCategorie; } - public function __set($property, $value){ - echo "test"; - if($property === "dateAdhesion"){ - $this->dateAdhesion = new DateTime($value); - }else{ - $this->$property = $value; - } - } - public static function getAllAdherents(): array { // écriture de la requête @@ -65,6 +56,35 @@ class Adherent return $tableau; } + public static function getAdherentByLogin($login) : Adherent + { + // écriture de la requête + $requetePreparee = "SELECT * FROM Adherent WHERE login = :login;"; + $req_prep = Database::pdo()->prepare($requetePreparee); + // le tableau des valeurs + $valeurs = array("login" => $login); + $response = null; + try { + // envoi de la requête + $req_prep->execute($valeurs); + // traitement de la réponse + $req_prep->setFetchmode(PDO::FETCH_ASSOC); + // récupération de l'auteur + $row = $req_prep->fetch(); + $response = new Adherent($row['login'], + $row['mdp'], + $row['nomAdherent'], + $row['prenomAdherent'], + $row['email'], + new DateTime($row['dateAdhesion']), + $row['numCategorie']); + + } catch (PDOException $e) { + echo $e->getMessage(); + } + return $response; + } + /** * @return string */ diff --git a/TP4/ex1/models/Auteur.php b/TP4/ex1/models/Auteur.php index 6a965130d1b031e783c526acc97f46354fa1b89b..c73ec32f63a939e0d5f96923a13894a0f2520d27 100644 --- a/TP4/ex1/models/Auteur.php +++ b/TP4/ex1/models/Auteur.php @@ -39,18 +39,20 @@ class Auteur $req_prep = Database::pdo()->prepare($requetePreparee); // le tableau des valeurs $valeurs = array("num_tag" => $numAuteur); + $response = null; try { // envoi de la requête $req_prep->execute($valeurs); // traitement de la réponse $req_prep->setFetchmode(PDO::FETCH_CLASS, 'Auteur'); // récupération de l'auteur - $a = $req_prep->fetch(); + $response = $req_prep->fetch(); // retour - return $a; - } catch (PDEException $e) { + + } catch (PDOException $e) { echo $e->getMessage(); } + return $response; } public function getNumAuteur() diff --git a/TP4/ex1/resources/views/adherents/liste-adherents.php b/TP4/ex1/resources/views/adherents/les-adherents.php similarity index 83% rename from TP4/ex1/resources/views/adherents/liste-adherents.php rename to TP4/ex1/resources/views/adherents/les-adherents.php index cc865eafab5dff39122a0c018c3f1c81b122a198..01e941b7e5d1b23ca42554a897678d08963af671 100644 --- a/TP4/ex1/resources/views/adherents/liste-adherents.php +++ b/TP4/ex1/resources/views/adherents/les-adherents.php @@ -2,7 +2,7 @@ <head> <meta charset="utf-8"> <title>Liste des adhérents</title> - <?=view('layouts.head')?> + <?=view('components.head')?> </head> <body class=""> <div class="container"> @@ -16,7 +16,7 @@ <p class="card-text">ID: <?=$adherent->getLogin()?><br> Date de naissance: <?=$adherent->getDateAdhesion()->format("Y-m-d")?></p> <a class="btn btn-primary" - href="index.php?controller=controleurAuteur&action=lireAuteur&numAuteur=<?=$adherent->getLogin()?>"> + href="index.php?action=lireAdherent&login=<?=$adherent->getLogin()?>"> Lire les détails </a> </div> @@ -24,6 +24,6 @@ <?php } ?> </div> </div> -<?=view('layouts.footer')?> +<?=view('components.footer')?> </body> </html> \ No newline at end of file diff --git a/TP4/ex1/resources/views/adherents/un-adherent.php b/TP4/ex1/resources/views/adherents/un-adherent.php new file mode 100644 index 0000000000000000000000000000000000000000..387bdcc9652f3756ad5689d3f7e7339d9aab18af --- /dev/null +++ b/TP4/ex1/resources/views/adherents/un-adherent.php @@ -0,0 +1,14 @@ +<html lang="fr"> +<head> + <meta charset="utf-8"> + <title>Info de l'adhérent</title> + <?=view('components.head')?> +</head> +<body class=""> +<div class="container"> + <h1>Information de l'adhérent</h1> + <?=$adherent->afficher()?> +</div> +<?=view('components.footer')?> +</body> +</html><?php \ No newline at end of file diff --git a/TP4/ex1/resources/views/auteurs/liste-auteurs.php b/TP4/ex1/resources/views/auteurs/les-auteurs.php similarity index 83% rename from TP4/ex1/resources/views/auteurs/liste-auteurs.php rename to TP4/ex1/resources/views/auteurs/les-auteurs.php index a756b37c9bbfeca58db03a06f88261b47d3af77b..d9ad9238b485c6c8a8fa26acfb431a6760f3d416 100644 --- a/TP4/ex1/resources/views/auteurs/liste-auteurs.php +++ b/TP4/ex1/resources/views/auteurs/les-auteurs.php @@ -2,7 +2,7 @@ <head> <meta charset="utf-8"> <title>Liste des auteurs</title> - <?=view('layouts.head')?> + <?=view('components.head')?> </head> <body class=""> <div class="container"> @@ -16,7 +16,7 @@ <p class="card-text">ID: <?=$auteur->getNumAuteur()?><br> Date de naissance: <?=$auteur->getAnneeNaissance()?></p> <a class="btn btn-primary" - href="index.php?controller=controleurAuteur&action=lireAuteur&numAuteur=<?=$auteur->getNumAuteur()?>"> + href="index.php?action=lireAuteur&numAuteur=<?=$auteur->getNumAuteur()?>"> Lire les détails </a> </div> @@ -24,6 +24,6 @@ <?php } ?> </div> </div> - <?=view('layouts.footer')?> + <?=view('components.footer')?> </body> </html> \ No newline at end of file diff --git a/TP4/ex1/resources/views/auteurs/auteur-info.php b/TP4/ex1/resources/views/auteurs/un-auteur.php similarity index 78% rename from TP4/ex1/resources/views/auteurs/auteur-info.php rename to TP4/ex1/resources/views/auteurs/un-auteur.php index b8357ea968ab7232b5a3d0c2c7edc87443cc9f3c..b8ac9ab9e44c9a1e05ba36441a4dc15792b574c8 100644 --- a/TP4/ex1/resources/views/auteurs/auteur-info.php +++ b/TP4/ex1/resources/views/auteurs/un-auteur.php @@ -2,13 +2,13 @@ <head> <meta charset="utf-8"> <title>Info de l'auteur</title> - <?=view('layouts.head')?> + <?=view('components.head')?> </head> <body class=""> <div class="container"> <h1>Information de l'auteur</h1> <?=$auteur->afficher()?> </div> -<?=view('layouts.footer')?> +<?=view('components.footer')?> </body> </html><?php diff --git a/TP4/ex1/resources/views/layouts/footer.php b/TP4/ex1/resources/views/components/footer.php similarity index 100% rename from TP4/ex1/resources/views/layouts/footer.php rename to TP4/ex1/resources/views/components/footer.php diff --git a/TP4/ex1/resources/views/layouts/head.php b/TP4/ex1/resources/views/components/head.php similarity index 100% rename from TP4/ex1/resources/views/layouts/head.php rename to TP4/ex1/resources/views/components/head.php