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 :

Problème d'accents


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 23
    Points : 19
    Points
    19
    Par défaut Problème d'accents
    Bonjour,

    Mon application php récupère un fichier uploader pour pouvoir le transformer en un fichier PDF accessible par l'intranet (lien sur le fichier PDF sur serveur).

    Pour que le nom du fichier puisse s'intégrer dans une url, je veux remplacer tous les lettres avec accents par leur équivalent sans accents.

    Voici mon script principal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
          	       require_once("TraitementChaineURL.php");
      	           echo "\n<BR><BR>Le fichier ".$_FILES['DocFile']['name']." a été uploadé !!";
      	           $PosLastChar = strrpos($_FILES['DocFile']['name'],".");
                   $FileExt = substr($_FILES['DocFile']['name'], $PosLastChar);
                   $FileNameExtLess = substr($_FILES['DocFile']['name'],0,$PosLastChar);
                	 echo "\n<BR><BR> Le nom du fichier sans extension est ".$FileNameExtLess;
                	 $FileName = clearname($FileNameExtLess);
                   echo "\n<BR><BR>Le fichier ".$FileName.$FileExt;
                	 $chemin_destination = "c:\\www\\monsite\\temp\\";
                	 echo "\n<BR><BR>Le chemin de destination est ".$chemin_destination;
                	 $fichier_destination = $chemin_destination.$FileName.$FileExt;
                	 echo "\n<BR><BR>Le fichier de destination est ".$fichier_destination;
                   move_uploaded_file($_FILES['DocFile']['tmp_name'], $fichier_destination);
    La fonction clearname :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function clearname($chaine)
    {
     
        $accents   = "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝþßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýÿÞ";
        $ssaccents = "AAAAAAACEEEEIIIIDNOOOOOOUUUUYBsaaaaaaaceeeeiiiidnoooooouuuyyyb";
        $chainessaccents = strtr($chaine,$accents,$ssaccents);
        return ereg_replace("[[:blank:]]+|[[:space:]]+","_",trim($chainessaccents));
    }
    Malheureusement ça ne fonctionne pas...
    Voici le résultat pour un fichier nommé "Ýþßàáâãäåæ.xls" :

    Le fichier Ýþßàáâãäåæ.xls a été uploadé !!

    Le nom du fichier sans extension est Ýþßàáâãäåæ

    Le fichier Yþsàaaãaåæ.xls

    Le chemin de destination est c:\www\monsite\temp\

    Le fichier de destination est c:\www\monsite\temp\Yþsàaaãaåæ.xls

    Certains accents ont bien été remplacé mais pas tous ( le à par exemple).

    Help !

    Merci d'avance



    PS: Apache/2.0.54 (Win32) PHP/5.0.5

    Essai sous Firefox
    Editeur PSPad

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    Problème de charset ...

    J'ai par forcément compris tout ce que j'ai lu sur le sujet mais j'ai mis mes pages en iso-1859-15 et ça fonctionne. il y a plus qu'à traiter les autres caractères spéciaux du type :

    ?./§!µ%£¨^=)_-('"&²~#{[|`_@])}$:;,<>*¤£µ%+°

    etc...

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

Discussions similaires

  1. petit problème d'accent
    Par No_SenS dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 11/04/2005, 14h10
  2. Problèmes d'accent avec une connexion ODBC et ADO
    Par michael.jacques dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/03/2005, 16h36
  3. Réponses: 3
    Dernier message: 25/02/2005, 21h46
  4. [XSLT] application d une xslt et problème d'accents
    Par lanfeust23 dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 26/07/2004, 14h08
  5. Problème avec accents et CHARACTER SET ISO8859_1
    Par kinda dans le forum InterBase
    Réponses: 13
    Dernier message: 30/10/2003, 16h49

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