autobuild($id_game); } else { $this->user_login = $user_login; $this->length = $length; $this->reponses_user = $reponses_user; $this->id_game = $id_game; $this->date = $date; } } private function autobuild($id) { //Inclusion des fichiers nécessaires require_once 'dao/game_dao.php'; //Création d'un game DAO $dao = new game_dao(); //Chargement des données $datas = $dao->select($id); //Mise en place des données $this->id_game = $id; $this->user_login = $datas["user_login"]; $this->length = $datas["length"]; $this->date = $datas["date"]; } /* * @brief Retourne la durée de la partie * @return durée */ public function getLength() { return $this->length; } /** * @brief Obtient le login de l'utilisateur ayant joué à cette partie * @return string */ public function getUserLogin() { return $this->user_login; } /** * @brief Obtient les réponses de l'utilisateur associées à la partie * @return reponses[] */ public function getReponses() { //Si il n'y a rien comme réponses, on les charge if ($this->reponses_user == NULL) { //Inclusion des fichiers nécessaire include_once './dao/reponse_user_dao.php'; include_once './metier/reponse_user.php'; //Initialisation du DAO $dao = new reponse_user_dao(); //Chargement des données $data = $dao->select($this->id_game); //Mise en place d'une variable de stockage $tmp = array(); $i = 0; //Encapsulation des données foreach ($data as $row) { $tmp[$i] = new reponse_user($row["game_id"], $row["question_id"], $row["reponse"]); $i++; } //On termine par sauvegarder les données $this->reponses_user = $tmp; } return $this->reponses_user; } /** * @brief Obtient l'identifiant de la partie * @return string */ public function getGameId() { return $this->id_game; } /** * @brief Définit l'identfiant de la partie * @arg $id int */ public function setGameId($id) { $this->id_game = $id; } /** * @brief Obtient quand la partie a été jouée */ public function getDate() { return $this->date; } /** * @brief Enregistre une partie dans la base de données */ public static function saveGame(&$data) { //Inclusion des fichier include_once './dao/game_dao.php'; include_once './dao/reponse_user_dao.php'; //Création d'un nouveau DAO $dao = new game_dao(); //On enregistre la partie $dao->insert($data); //On récupère la dernière partie enregistrée $new_id = $dao->getLastId(); //On met à jour l'objet passé en argument $data->setGameId($new_id[0]); //On enregistre les réponses $dao = new reponse_user_dao(); $reps = $data->getReponses(); foreach ($reps as $rep) { $rep->setGame($new_id[0]); $dao->insert($rep); } return true; } } ?>