/** * @param Saison $saison * @return Collection * @throws \Exception */ public static function getSpectaclesBySaison(Saison $saison) { try { $conn = Main::bdd(); $reqPrepare = $conn->prepare("SELECT sp.idSpectacle, nomSpectacle, nbPlaceSpectacle, typeClasse, typeSpectacle, s.idSaison\n FROM spectacle sp\n INNER JOIN saison_spectacle ss ON ss.idSpectacle = sp.idSpectacle\n INNER JOIN saison s ON s.idSaison = ss.idSaison\n WHERE s.idSaison = ?"); $reqPrepare->execute([$saison->getId()]); $tabs = $reqPrepare->fetchAll(); $coll = new Collection(); foreach ($tabs as $tab) { $spectacle = new Spectacle($tab['idSpectacle'], $tab['nomSpectacle'], $tab['nbPlaceSpectacle'], $tab['typeClasse'], $saison, $tab['typeSpectacle']); $coll->ajouter($spectacle); } return $coll; } catch (\PDOException $e) { throw new \Exception($e->getMessage()); } }
public static function setSaisonSpectacle(Saison $saison, Spectacle $spectacle) { $conn = Main::bdd(); try { $conn->beginTransaction(); $reqPrepare = $conn->prepare("UPDATE saison_spectacle SET idSaison = ? WHERE idSpectacle = ?"); $reqPrepare->execute(array($saison->getId(), $spectacle->getId())); $conn->commit(); } catch (\PDOException $e) { $conn->rollBack(); throw new \Exception($e->getMessage()); } }