Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/02/2007, 15h07   #1
Invité de passage
 
Inscription : février 2007
Messages : 16
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 16
Points : 1
Points : 1
Par défaut [Upload] Changer une extension JPG en jpg

Bonjour à tous,,
Je suis en train de créer un site commercial pour un copain.
Sur les 1700 photos reçu j'ai des photos evec des extension JPG en maj et de jpg en minuscul.
Le problème se pose l'orsqu'on place le tous sur le serveur ,certaines photos n'apparaisse pas ,j'ai maintenant renommer toutes les photos en jpg
Mais je cherche un script que je pourrais utiliser dans un formulaire upload afin de changer l'extension JPG en jpg lorsque cette personne place un nv produit sur son site car en général on teste sur le jepg ou jpg mais....
Merci
Stéphane
svan1812 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 15h18   #2
Membre éclairé
 
Avatar de johweb
 
Inscription : décembre 2003
Messages : 332
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : décembre 2003
Messages : 332
Points : 316
Points : 316
Code :
rename($monfichier, strtolower($monfichier));
Et tu devrais plus avoir de souci... ^^
johweb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 15h35   #3
Modérateur
 
Avatar de s.n.a.f.u
 
Homme
Développeur Web
Inscription : août 2006
Messages : 2 700
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2006
Messages : 2 700
Points : 3 357
Points : 3 357
Il est peut-être aussi judicieux de prévoir une gestion de nom de photo "case insensitive".
En effet, si tu as un jour un utilisateur qui fait de l'upload de masse avec un client FTP et des extensions en majuscules... Hum ?...
s.n.a.f.u est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 15h50   #4
Invité de passage
 
Inscription : février 2007
Messages : 16
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 16
Points : 1
Points : 1
Par défaut Merci pour ta réponce si rapide

Oui je n'avais pas penser a mettre tous en majuscule tous simplement,,pourrais-tu me donner plus d'info dans le cas que cette persoone passe par un envois ftp
Merci
svan1812 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 15h58   #5
Modérateur
 
Avatar de s.n.a.f.u
 
Homme
Développeur Web
Inscription : août 2006
Messages : 2 700
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2006
Messages : 2 700
Points : 3 357
Points : 3 357
Je me suis mal exprimé : le but n'est pas de tout mettre en majuscules.
Le but est de gérér les noms de photos indépendemment de la casse du fichier.
s.n.a.f.u est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 18h06   #6
Modérateur
 
Avatar de Rakken
 
Inscription : août 2006
Messages : 1 207
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 207
Points : 1 137
Points : 1 137
C'est pas nécessairement possible d'être completement indépendant de la casse. Certains serveurs voient "image.jpg" et "image.JPG" comme étant des images differentes (c'est très amusant la premiere fois, quand on a fait son appli avec easyphp sous windows et qu'on mets en ligne sous linux ^^)

Il faut s'arranger sur toute la chaine pour avoir une casse unique (de base du minuscule intégral sans caractère spéciaux (accent, espace...) me semble le mieux.

Donc pour toute les fonctions d'upload ou autres qui sont "maitrisé" par php, tu renomme directement a la volée, et si le gars veut envoyer par ftp... ben tant pis pour lui. (A la rigueur, tu peux faire un ptit script qui lit tous les fichiers d'un répertoire et qui les normalises. C'est pas bien long a faire, et c'est toujours utile).
__________________
Rakken

Oneira, un monde imaginaire d'Heroic Fantasy.

Parce que la présomption d'innocence est un des fondements de notre pays et qu'elle doit le rester, dans tous les domaines : http://www.laquadrature.net/
Rakken est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 21h32   #7
Modérateur
 
Avatar de s.n.a.f.u
 
Homme
Développeur Web
Inscription : août 2006
Messages : 2 700
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 37
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : août 2006
Messages : 2 700
Points : 3 357
Points : 3 357
Citation:
Envoyé par Rakken
C'est pas nécessairement possible d'être completement indépendant de la casse. Certains serveurs voient "image.jpg" et "image.JPG" comme étant des images differentes (c'est très amusant la premiere fois, quand on a fait son appli avec easyphp sous windows et qu'on mets en ligne sous linux ^^)
Cas intéressant effectivement.
Malgré tout, je pense que c'est ton code php qui doit prendre en charge une gestion "case insensitive". Tes photos seront très certainement identifiées à l'aide des regexp, qui peuvent parfaitement ignorer la casse.

Il ne reste ensuite que ce cas tordu de image.jpg et image.JPG. Si tu mets en place un système de renommage comme l'a suggéré Rakken, ça va déjà aider. Mais que faire dans ce cas précis : écraser l'ancienne image, renommer la nouvelle, etc... Bref, y aura de toute façons un peu de maintenance.
s.n.a.f.u est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h03.


 
 
 
 
Partenaires

Hébergement Web