Bonjour,

Après de nombreuses recherches, je m'en remets à vous !

Voici mon souci :

Lorsque j'upload un fichier avec comme nom "écrivain.pdf" , je récupère son nom originaire "écrivain.pdf" et je l'envoie dans un répertoire défini mais lorsque le fichier est envoyé sur le serveur, son nom avec accent change : "écrivain.pdf".
Sinon, si le fichier ne contient pas d'accents dans son titre, tout fonctionne bien.

Voici un bout le bout de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
// Récupère le nom original avant de le sauver
           $fileName = $file->getClientOriginalName();
           //var_dump($fileName);
           // Envoie le fichier dans le bon répertoire public
           $PDFDir = $this->container->getParameter('kernel.root_dir').'/../web/info'.$categ->getEnumCateg().'/PDF/';
           $file->move($PDFDir, $fileName);
           //$file->move($PDFDir, $fileName);
           $post->setItemPDF($fileName);
Donc, j'envoie bien mon fichier au répertoire défini

- En base de données j'ai bien le nom du fichier avec accent
- Sur la vue, pour visualiser le titre du fichier, j'ai bien le nom du fichier avec accent
- Mais sur le serveur (dans le répertoire), le fichier contient des symboles à la place des accents.

Donc lorsque je veux visualiser le fichier l'url demande cà : srvTest/xxxx/xxxx/écrivain.pdf
Mais j'ai un message qui dit que la ressource n'est pas trouvée (ce qui est normal car il attend srvTest/xxxx/xxxx/écrivain.pdf ) : The requested URL /xxx/xxx/écrivain.pdf was not found on this server.

A quoi cela est dû ?

Tout est en UTF8 (Mon IDE Netbeans, php.ini, Apache avec l'httpd.conf).

Auriez-vous une piste ?

J'aimerais dans l'idéal ne pas changer le nom originaire du fichier.

Si je n'ai pas été claire, n'hésitez pas à me reprendre.

Merci beaucoup d'avance,