示例#1
0
 public static function saveTeam(Team $team)
 {
     //Aiguilleur Insert/Update
     $req = DataBase::getInstance()->prepare('SELECT COUNT(id) FROM team WHERE id = :id');
     $req->bindvalue('id', $team->getId(), PDO::PARAM_INT);
     $req->execute();
     $count = $req->fetchColumn();
     $req->closeCursor();
     if ($count == 0) {
         $req = DataBase::getInstance()->prepare('INSERT INTO team (name, description) VALUES (:name, :description)');
     } else {
         $req = DataBase::getInstance()->prepare('UPDATE team SET (name = :name, description = :description) WHERE id = :id');
         $req->bindvalue('id', $team->getId(), PDO::PARAM_INT);
     }
     $req->bindValue('name', $team->name, PDO::PARAM_STR);
     $req->bindValue('description', $team->description, PDO::PARAM_STR);
     $req->execute();
     $req->closeCursor();
     if ($count == 0) {
         $team->setId(DataBase::getInstance()->lastInsertId());
     }
     //Liens utilisateurs
     $req = DataBase::getInstance()->prepare('DELETE FROM team_player WHERE team = :id');
     $req->bindvalue('id', $team->getId(), PDO::PARAM_INT);
     $req->execute();
     $req->closeCursor();
     $req = DataBase::getInstance()->prepare('INSERT INTO team_player (player, team) VALUES (:player, :team)');
     $req->bindvalue('team', $team->getId(), PDO::PARAM_INT);
     foreach ($team->getPlayers() as $player) {
         $req->bindvalue('player', $player->getId(), PDO::PARAM_INT);
     }
     $req->execute();
     $req->closeCursor();
     //Inscriptions
     $req = DataBase::getInstance()->prepare('DELETE FROM team_inscription WHERE team = :id');
     $req->bindvalue('id', $team->getId(), PDO::PARAM_INT);
     $req->execute();
     $req->closeCursor();
     $req = DataBase::getInstance()->prepare('INSERT INTO team_inscription (tournament, team) VALUES (:tournament, :team)');
     $req->bindvalue('team', $team->getId(), PDO::PARAM_INT);
     foreach ($team->getTournaments() as $tournament) {
         $req->bindvalue('tournament', $tournament->getId(), PDO::PARAM_INT);
         $req->execute();
     }
     $req->closeCursor();
 }