diff --git a/app/src/Service/UploaderService.php b/app/src/Service/UploaderService.php index 4885cf5..29417be 100644 --- a/app/src/Service/UploaderService.php +++ b/app/src/Service/UploaderService.php @@ -21,8 +21,16 @@ class UploaderService { $dossier = $this->uploadDir . '/' . $sousDir; + // Créer le répertoire s'il n'existe pas if (!is_dir($dossier)) { - mkdir($dossier, 0755, true); + if (!@mkdir($dossier, 0755, true)) { + throw new \RuntimeException("Impossible de créer le répertoire d'upload: '$dossier'. Vérifiez les permissions."); + } + } + + // Vérifier que le répertoire est accessible en écriture + if (!is_writable($dossier)) { + throw new \RuntimeException("Le répertoire d'upload n'est pas accessible en écriture: '$dossier'. Vérifiez les permissions."); } if ($keepOriginalName) { @@ -36,7 +44,11 @@ class UploaderService $nom = uniqid() . '.' . $file->guessExtension(); } - $file->move($dossier, $nom); + try { + $file->move($dossier, $nom); + } catch (\Exception $e) { + throw new \RuntimeException("Erreur lors du déplacement du fichier: " . $e->getMessage()); + } return $nom; }