config = $config; } /** * Méthode appelée avec une requête de type GET. */ public function getElement($params) { // suppression des 0 non significatifs à gauche $id = ltrim($params[0],'0'); $format = isset($_GET['format']) ? $_GET['format'] : 'M'; if($this->verifierParametres($id, $format)) { $gestion_formats_images = new ImageRecreation($this->config); $image_binaire = $gestion_formats_images->creerOuRenvoyerImage($params[0], $format); if($image_binaire) { header('Content-Type: image/jpeg'); echo $image_binaire; exit; } else { header("HTTP/1.0 404 Not Found"); echo 'Aucune image ne correspond à cet identifiant'; } } } private function verifierParametres($id, $format) { $ok = true; $message = ''; if(!is_numeric($id)) { $message .= "L'identifiant de format doit être un entier. "; $ok = false; } if(!in_array($format, $this->formats)) { $message .= "Le format d'image est inconnu, les formats acceptés sont ".implode(',', $this->formats).". "; $ok = false; } if(!empty($message)) { header("HTTP/1.0 400 Bad Request"); echo $message; } return $ok; } }