Annonce

Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Nemehy
2014-01-19 20:40:25

Bonjour,

J'ai eu aussi le même problème et j'ai trouvé comme logiciel sous windows "ant renamer" (http://www.antp.be/software/renamer/fr)

En espérant que ça puisse aider....

Nemehy

jdd
2010-11-12 13:54:57

Bonjour,

Je voulais juste signaler que j'ai trouvé un utilitaire appelé "detox" (http://detox.sourceforge.net/) qui fait très bien le ménage dans les noms de fichier.

Il tourne sous linux, mais le source est dispo et peut sans doute être adapté. Il a l'avantage de gérer tous les types de caracères.

jdd

plg
2010-10-03 00:52:02

mathiasm a écrit:

est-ce que cette fonctionnalité sera disponible pour la synchro post-FTP ?

non.

Il faudrait faire une campagne de test dans des environnements variés pour valider qu'on peut avoir des noms de fichiers avec des caractères "exotiques". Là c'est plus "détourné", car le nom du fichier est normé par la tant décriée règle <année><mois><jour><heure><minute><seconde>-<random>.jpg et on stocke en base le nom original.

mathiasm
2010-10-03 00:36:29

est-ce que cette fonctionnalité sera disponible pour la synchro post-FTP ?

plg
2010-10-02 20:35:23

Pour info, ce problème disparaîtra (j'espère en 2.2) quand le formulaire d'ajout de photo de l'administration sera également disponible pour les visiteurs. Il accepte les accents français, mais aussi les caractères russes ou chinois dans les noms de fichier.

Clémentv
2010-10-02 16:06:28

le message du forum à couper ma ligne trop grande
alors je la reposte ->

$_FILES['picture']['name']=str_replace(array(' ','$','^','¨','*','~','@','°','+','=','}',']','|','[','(','{','#',
'²','<','>','%','!','?',',',';',':','à','á','â','ã','ä','ç','è','é','ê','ë','ì','í','î','ï','ñ','ò','ó','ô','õ','ö','ù','ú','û','ü','ý',
'ÿ','À','Á','Â','Ã','Ä','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý'),array('_','_','_','_',
'_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','a','a','a','a','a','c','e','e','e','e','i',
'i','i','i','n','o','o','o','o','o','u','u','u','u','y','y','A','A','A','A','A','C','E','E','E','E','I','I','I','I','N','O','O','O','O',
'O','U','U','U','U','Y'),utf8_decode(substr(stripslashes($_FILES['picture']['name']),0,40)));

Clémentv
2010-10-02 16:03:58

Merci pour cette réponse très rapide, mais je ne vais pas attendre.
Pour ceux qui ne veulent pas attendre voici la modif que j'ai faite et un peu testé, enfin un visiteur peu avec cette modif upoloader une image avec accents et espace et plus...
donc dans le fichier upload.php j'ai inclus la ligne suivante

$_FILES['picture']['name']=str_replace(array(' ','$','^','¨','*','~','@','°','+','=','}',']','|','[','(','{','#','²','<','>','%','!','?',',',';',':','à','á','â','ã','ä','ç','è','é','ê','ë','ì','í','î','ï','ñ','ò','ó','ô','õ','ö','ù','ú','û','ü','ý','ÿ','À','Á','Â','Ã','Ä','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý'),array('_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','a','a','a','a','a','c','e','e','e','e','i','i','i','i','n','o','o','o','o','o','u','u','u','u','y','y','A','A','A','A','A','C','E','E','E','E','I','I','I','I','N','O','O','O','O','O','U','U','U','U','Y'),utf8_decode(substr(stripslashes($_FILES['picture']['name']),0,40)));

à la ligne 177 ici ->

//-------------------------------------------------------------- picture upload
// verfying fields
if ( isset( $_POST['submit'] ) and !isset( $_GET['waiting_id'] ) )
{
  $_FILES['picture']['name']=str_replace(array(' ','$','^','¨','*','~','@','°','+','=','}',']','|','[','(','{','#','²','<','>','%','!','?',',',';',':','à','á','â','ã','ä','ç','è','é','ê','ë','ì','í','î','ï','ñ','ò','ó','ô','õ','ö','ù','ú','û','ü','ý','ÿ','À','Á','Â','Ã','Ä','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý'),array('_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','_','a','a','a','a','a','c','e','e','e','e','i','i','i','i','n','o','o','o','o','o','u','u','u','u','y','y','A','A','A','A','A','C','E','E','E','E','I','I','I','I','N','O','O','O','O','O','U','U','U','U','Y'),utf8_decode(substr(stripslashes($_FILES['picture']['name']),0,40)));
  $path = $category['cat_dir'].$_FILES['picture']['name'];
  if ( @is_file( $path ) )
  {

Un pro pourra peu être nous donner sont avis, mais je pense que cela fonctionne bien.

Gotcha
2010-10-01 23:38:36

Nous n'avons pas de dates mais cette fonctionnalité va évoluer et vos visiteurs n'en seront que plus heureux.
Je sais ça ne répond pas à votre question, c'était pour information ;-)

Clémentv
2010-10-01 17:39:42

j'aimerai pouvoir renommer les images lors du telechargement sur le site 'Ajouter une image' par les utilisateur, comme ça une fois l'image renommée le reste de la galerie fonctionne.

donc cela ce situe au niveau de la ligne 243 dans le fichier upload.php

  if ( !preg_match( '/^[a-zA-Z0-9-_.]+$/', $_FILES['picture']['name'] ) )
  {
    array_push( $error, l10n('wrong filename') );
  }
si je met ces ligne en commentaire, je peux alors charger une image, mais comme elle a un sale nom elle est détruite lors de la fabrication de la miniature, donc il faut bien la renommer ...

quelqu'un peut m'aider à modifier $_FILES['picture']['name'] ?

j'ai testé ça :

function suppr_accents($chaine) {
$accents = array('À','Á','Â','Ã','Ä','Å','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý','à','á','â','ã','ä','å','ç','è','é','ê','ë','ì','í','î','ï','ð','ò','ó','ô','õ','ö','ù','ú','û','ü','ý','ÿ');
$sans = array('A','A','A','A','A','A','C','E','E','E','E','I','I','I','I','O','O','O','O','O','U','U','U','U','Y','a','a','a','a','a','a','c','e','e','e','e','i','i','i','i','o','o','o','o','o','o','u','u','u','u','y','y');
return str_replace($accents, $sans, $chaine);
}

if (!preg_match('/^[a-zA-Z0-9-_.]+$/', str_replace(' ','_',suppr_accents($_FILES['picture']['name'] ))))

cela fait comme si ça charge mais en changeant le nom je crois qu'il ne trouve plus l'image

Gotcha
2010-09-15 09:53:01

TiOger a écrit:

Tcherno a écrit:

+1 pour l'idée d'une correction directe en ligne... Si c'est possible.
Préférer un heurodatage, toujours utiles même si la date de prise de vue est dans les EXIF.

En passant, il est très facile d'enlever tous les "meta" d'un fichier de type jpg...
Je vous propose ce lien (le pire, c'est que c'est un gratuiciel... Attention aux sources le proposant, certaines sont plus que douteuses. Celle proposée a été vérifiée.):
http://www.gratilog.net/xoops/modules/m … p;lid=1949

Ce n'est pas le sujet. XnView le fait très bien et c'est un logiciel sûre.

TiOger
2010-09-15 00:49:35

Tcherno a écrit:

+1 pour l'idée d'une correction directe en ligne... Si c'est possible.
Préférer un heurodatage, toujours utiles même si la date de prise de vue est dans les EXIF.

En passant, il est très facile d'enlever tous les "meta" d'un fichier de type jpg...
Je vous propose ce lien (le pire, c'est que c'est un gratuiciel... Attention aux sources le proposant, certaines sont plus que douteuses. Celle proposée a été vérifiée.):
http://www.gratilog.net/xoops/modules/m … p;lid=1949

cljosse
2010-09-14 19:37:18

Je n'ai pas testé sur la HD, mais pas de pb pour la création des miniatures.

Gotcha
2010-09-14 17:45:33

@cljosse :
Je n'ai pas testé ces modifications mais est-ce que cela n'impacte pas le fonctionnement de Piwigo ? Surtout pour la génération de miniatures, pour l'affichage des images HD etc. ?

cljosse
2010-09-14 14:36:11

PHILPHIL21 a écrit:

Le top serrait que piwigo remplace automatiquement les espaces par ? ( des _ ou des .) ou les suppriment tout simplement.

bonjour.
  La modif peut se faire plus simplement au niveau du test:
  Procédure pour synchroniser les répertoires et fichiers comportant des espaces:
A°)
  1°)
Dans le fichier "admin/site_update.php"
  Modif à faire ligne 234
pour les répertoires comportant des espaces:

Code:

if (preg_match('/^[a-zA-Z0-9-_.]+$/', str_replace(' ', '_', $dir)))

2°)
Modif à faire ligne 416
pour les noms de fichier comportant des espaces:

Code:

if (!preg_match('/^[a-zA-Z0-9-_.]+$/', str_replace(' ', '_', $filename)))

B°)
Dans le fichier:"admin/thumbnail.php"
Modif à faire ligne 216

Code:

      if (!preg_match('/^[a-zA-Z0-9-_.]+$/', str_replace(' ', '_', $filename)))

A+

Tcherno
2010-09-14 10:05:09

Bravo les gars ! Je suis épaté que des gens répondent poliment a d'autres qui croient tout savoir !

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2022 · Contact