IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

2 problèmes de nom de fichier


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut 2 problèmes de nom de fichier
    Bonjour,

    j'uploade des fichiers dont le nom comporte des caractères spéciaux ; j'ai besoin de les renommer pour la suite, mais n'y arrive pas ; j'ai donc besoin d'aide.
    Le premier comporte le caractère "é" et quand je l'uploade, ce caractère est renommé en "a©", j'ai donc mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $filereq=str_replace("a©","e",$filereq);
    Le deuxième comporte le caractère "œ" et quand je l'uploade, ce caractère est renommé en "a“", j'ai donc mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $filereq=str_replace("a“","oe",$filereq);
    Mais dans les 2 cas, le renommage ne marche pas. Quelle est la solution ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Essaie plutot avec utf8_encode()

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    J'ai mis dans mon code cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $filereq=utf8_encode($filereq);
    , mais ça ne marche pas...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    C'est à dire ? Qu'obtiens-tu ?

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    Le renommage n'a pas eu lieu et en allant voir dans le FTP, le fichier reste nommé "Gagné.gif" (alors que dans Windows Explorer, c'est "Gagné.gif")...

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    utilise utf8_decode()

  7. #7
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    idem, avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $filereq=utf8_decode($filereq);
    ...

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il faudrait voir ton code pour voir ce que tu fais exactement.

  9. #9
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    Voilà mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    if ($handle = opendir('../../upload1/image')) {
       while ((false !== ($file = readdir($handle)))) {/* lecture du contenu du répertoire*/
            if ($file != "." && $file != "..") {
    /* je décortique le nom du fichier (je ne me rappelle plus pourquoi, mais c'était justifié) */
    			$f=explode(".",$file);
    			if (sizeof($f)>0) $filereq=$f[0].".".$f[1];
    			if (sizeof($f)>2) $filereq.=".".$f[2].".".$f[3];
    			$memofilereq=$filereq;/* mémorisation du nom avant le renommage */
     
    			// === on supprime les accents et les espaces du nom de l'image 
    			$filereq = strtr($filereq,  "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ",   
    			"aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn");  
    // === on supprime les espaces
    			$filereq=str_replace(" ","_",$filereq); 
    			$filereq=utf8_decode($filereq);
    //  === OE
    			$filereq=str_replace("Œ","OE",$filereq);
    			$filereq=str_replace("œ","oe",$filereq);
    			rename($memofilereq,$filereq); /* c'est ça qui ne marche pas, mais s'il n'y a pas besoin de renommage, $filereq contient bien le nom du fichier */
    ...

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    C'est plutot au moment de l'upload qu'il faudrait corriger le nom mais c'est avant toute modification sur le nom qu'il faut faire le utf8_decode()

  11. #11
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    Mais il faut bien d'abord uploader le fichier, et mon code se trouve juste après le move_uploaded_file (et même si je lis le contenu entier du répertoire, je ne cherche à renommer que le dernier fichier (afin d'inscrire son nom (et d'autres infos dans une table MySQL))

  12. #12
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 460
    Points : 5 824
    Points
    5 824
    Billets dans le blog
    1
    Par défaut
    Je vais essayer de m'en sortir autrement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de noms de fichiers
    Par Rico2a dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 09/01/2014, 14h51
  2. Opendialog et problème récupération nom du fichier
    Par jeff_68 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 22/07/2010, 17h03
  3. Problème de nom de fichier et question subsidiaire
    Par Smiff dans le forum Langage
    Réponses: 2
    Dernier message: 05/02/2008, 22h39
  4. Réponses: 2
    Dernier message: 19/12/2006, 18h37
  5. [DOM] Problème d'accent sur les noms de fichier avec mon parseur
    Par ujoodha dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 06/04/2006, 21h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo