| ||||||||
Petit astucien | Bonjour, je suis code actuellement une petite application pour uploader des documents dans un dossier de nom site afin de les partager facilement avec mes collègues. Mon soucis, c'est un problème avec les caractères accentué dans les nom des fichier. Lors de l'upload, la base de donnée est correctement incrémenté y compris pour les caractères accentué, par contre le nom du fichier, s'il y a des lettres accentué, apparaisse comme ça dans le dossier : "aéé à à èè test.txt" au lieu de "aéé ààèè test.txt"
Si je modifie mon scripte comme ça pour obliger utf8 les nom sont correctement orthographié même pour les accents mais je n'arrive plus à accéder au fichier.
Merci pour votre assistance. Modifié par jmsch le 24/11/2018 10:28 | |||||||
Publicité | ||||||||
| ||||||||
Astucien ![]() | Salut, Ca a été dit et répété, encore et encore. Si un étranger veut un fichier ou une page qui contient des accents, il fait comment ? Il n'a pas les accents sur son clavier !
Modifié par zoulouman le 24/11/2018 21:50 | |||||||
Petit astucien | Of course zoulouman...mais c'est difficile, voire impossible, d'obtenir de correspondants ou intervenants novices ou jemenfoutistes, un bon nommage des fichiers. A défaut... peut-être renommer le fichier durant l'upload... un truc du style : <?php move_uploaded_file($tmp_file,$content_dir.$name_file); // ici le script (à trouver ou à créer) pour remplacer, dans le nom du fichier, les lettres accentuées et signes spéciaux en lettres non accentuées et caractères ad hoc. rename($content_dir.$name_file,$content_dir.$new_name_file); ?> A+ *µ* | |||||||
Astucien ![]() | C'est lui, Jmsch, qui upload les fichiers. Il suffit de savoir ce qu'on fait. Sinon, si c'est la populace qui verse des fichiers sur le serveur, là oui, il faut renommer.
| |||||||
Petit astucien | Merci pour vos réponses. Alors oui dans l'idéale pas de nom ni d'accent dans les nom de dossier. Renommer le fichier c'est une piste que je vais exploiter. Et si je le laisse comme ça. Si je ne change rien, le nom "aéé ààèè test.txt" du fichier sera orthographié comme ça "aéé à à èè test.txt" dans le dossier (personne ne le voit) Quand on le re-télécharge la conversion est faite automatiquement et on retrouve le nom d'origine. | |||||||
Astucien ![]() | Bien sûr que ça pose problème, sinon tu ne serais pas ici à chercher de l'aide. Il faut bannir les accents, les espaces et les caractères spéciaux dans les noms de fichiers. Ton Windows et son système de fichiers ne sont pas étudiés pour le net. C'est l'exemple de ce qu'il ne faut pas faire.
| |||||||
Petit astucien | Voilà qui est fait. Supression des caractère accentué et des espaces que je remplace par un tiret bas. Merci à vous. J'ai une seconde question et pour le moment je ne sais pas la meilleure solution pour la traiter. Aurait tu une idée? Pour communiquer avec nos membres exemple invitation à un événement je veux créer des pdf qui seront envoyés par mail. Actuellement les documents sont sous format Word et envoyé manuellement par mail. L'idée serait via php d'ouvrir le Word y inclure adresse et autre infos puis générer le pdf qui sera envoyé par mail. Cela te semble realisable ou vois tu une autre méthode sachant que les pdf via php je sais faire.... c la partie import depuis word que je ne métrise pas du tout?
| |||||||
Astucien ![]() | Word n'étant pas du tout un standard sur le web, tu risques d'avoir des soucis. PHP permet de convertir un fichier en PDF, mais si c'est du format propriétaire Microsoft, ça risque fort de ne pas marcher. Sur ce point précis, je ne sais pas du tout. Quand j'ai des PDF à créer, je le fais avec OpenOffice et tout va bien. Sur le net, il faut bannir les formats propriétaires qui obligent tes visiteurs à acheter des licences pour un simple fichier. Sans parler du référencement qui est catastrophique avec ce type de fichier.
| |||||||
Petit astucien | Tour à fait daccacev toi. L'idée ct de réaliser le document sur word avec des champs à compléter via php. Une X les champs remplis créer le pdf qui lui serait envoyé. Je ne veux pas envoyer le Word. | |||||||
Astucien ![]() | Non ! Avec Word tu ne pourras pas ! Si il s'agit de produits soumis à licence, donc des produits propriétaire, PHP n'a pas les fonctions pour ça. Dernier exemple en date : Avant, MySQL était un gestionnaire de bases de données sous licence libre. Qu'à fait PHP ? Ils ont abandonné le support MySQL et toutes les fonctions concernant MySQL de Oracle se sont volatilisées à partir de la version 7 de PHP ! Tu es dans le monde de l'open source, oublie Microsoft et utilise Open-office qui fait le même boulot !
| |||||||
Petit astucien | Merci pour ta réponse. Je vais ouvrir un nouveau sujet pour cette discussion. | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | ||||||||||||||||||
|