/** * Récupère la saison dont le nom est passé en paramètre * @param string $name * @return Saison * @throws \Exception */ public static function getSaisonByName($name) { try { $conn = Main::bdd(); $reqPrepare = $conn->prepare("SELECT * FROM saison s INNER JOIN saison_spectacle ss ON ss.idSaison = s.idSaison INNER JOIN spectacle sp ON sp.idSpectacle = ss.idSpectacle WHERE s.nomSaison = ?"); $reqPrepare->execute(array($name)); $tab = $reqPrepare->fetchAll(); $lesSpectacles = MSpectacle::getSpectaclesByIdSaison($tab['idSaison']); $saison = new Saison($tab['idSaison'], $tab['nomSaison'], $tab['courante']); $saison->setLesSpectacles($lesSpectacles); return $saison; } catch (\PDOException $e) { throw new \Exception("La saison {$name} n'existe pas."); } catch (KeyHasUseException $ex) { throw new \Exception($ex->getMessage()); } }