bdd = new Connector(); $options = array( "where" => array( array("login", "=", $login) ) ); $data = $this->bdd->Select("*", "scores", $options); $this->login = $data[0]['login']; $this->score = $data[0]['score']; } function getLogin() { return $this->login; } function getScore() { return $this->score; } public static function getScores($nRows, $direction = "desc") { $bdd = new Connector(); $options = array( "order by" => array("score", $direction), "limit" => array($nRows) ); $array = $bdd->Select("*", "scores", $options); $scores = array(); foreach($array as $score) { array_push($scores, new Score($score['login'])); } return $scores; } public static function add($login, $score) { $bdd = new Connector(); $options = array( "where" => array( array("login", "=", $login) ) ); if(!$scores = $bdd->Select("*", "scores", $options)) { $values = array( "login" => $login, "score" => $score ); $bdd->Insert("scores", $values); } else { if($score > $scores[0]['score']) { $update = array( "where" => array( array("login", "=", $login) ), "set" => array("score" => $score) ); $bdd->Update("scores", $update); } else { throw new Exception('higher_score_present'); } } } }