prepare('select id, title, illustration, description, date from project limit :from, :limit'); $query->bindParam(':from', $from, PDO::PARAM_INT); $query->bindParam(':limit', $limit, PDO::PARAM_INT); $query->execute(); return $query->fetchAll(); } /** * Retourne un projet en fonction de son id * * @param int $id id du projet * @return array|false Le projet */ function getProject($id) { if (!is_integer($id)) { throw new InvalidArgumentException('The argument "id" must be an interger.'); } $pdo = getDatabaseConnection(); $query = $pdo->prepare('select id, title, illustration, description, date from project where id=:id'); $query->bindParam(':id', $id, PDO::PARAM_INT); $query->execute(); return $query->fetch(); } /** * @param int $maxPerPage Nombre de projets par page * @return int Le nombre de pages */ function getProjectNumberOfPages($maxPerPage) { if (!is_integer($maxPerPage)) { throw new InvalidArgumentException('The argument "maxPerPage" must be an interger.'); } $pdo = getDatabaseConnection(); $query = $pdo->prepare('select count(*) as total from project'); $query->execute(); $result = $query->fetch(); return ceil($result['total'] / $maxPerPage); } /** * Returne les commentaires d'un projet * * @param int $id L'id du projet * @return array Les commentaires du projet */ function getCommentsByProject($id) { // À réaliser } // Prévoir une fonction pour enregistrer un commentaire