public static function getSeancesByLieu(Lieu $lieu) { try { $conn = Main::bdd(); $reqPrepare = $conn->prepare("SELECT * FROM seance WHERE idLieu = ?"); $reqPrepare->execute(array($lieu->getId())); $tabs = $reqPrepare->fetchAll(); $coll = new Collection(); foreach ($tabs as $tab) { $spectacle = MSpectacle::getSpectacleById($tab['idSpectacle']); $seance = new Seance($tab['idSeance'], $spectacle, new \DateTime($tab['date_heure']), $lieu); $coll->ajouter($seance); } return $coll; } catch (\PDOException $e) { throw new \Exception("Il n'y a aucune séance pour le spectacle " . $spectacle->getNom()); } catch (KeyHasUseException $ex) { throw new \Exception($ex->getMessage()); } }
/** * Modifie un lieu * @param Lieu $lieu * @throws \Exception */ public static function editLieu(Lieu $lieu) { $conn = Main::bdd(); try { $conn->beginTransaction(); $reqPrepare = $conn->prepare("UPDATE lieu SET nomLieu = ?, adrLieu = ?, cpLieu = ?, villeLieu = ? WHERE idLieu = ?"); $reqPrepare->execute(array($lieu->getNom(), $lieu->getAdresse(), $lieu->getCp(), $lieu->getVille(), $lieu->getId())); $conn->commit(); } catch (\PDOException $e) { $conn->rollBack(); throw new \Exception("Le lieu " . $lieu->getId() . " n'a pas pu être modifié. Détails : <p>" . $e->getMessage() . "</p>"); } }