[RESOLU] Ouvrir fichier avec accent

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Ouvrir fichier avec accent

Re: [RESOLU] Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 14:34

J'adore quand on aide quelqu'un qui trouve la solution, ça, c'est du grand art =D> =D> =D> Bravo et l'est content le NonO !

Pour ma part je ne savais pas pour windows, cela enrichit ma culture personnelle.

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 12:31

Problème résolu !
J'ai utilisé le code suivant:
$fileName = 'xls/testé.txt';
$fileName = mb_convert_encoding ($fileName,'CP1252', 'utf-8');
Cela converti $fileName de l'encodage CP1252 (qui est un encodage propre à Windows) vers l'encodage utf-8 plus classique.

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 11:53

Oui c'est chiant en effet. Je me suis intéressé aux charset UTF-8 et iso-8859-1 mais rien n'y fait, ça ne veut pas.

Du coup si quelqu'un d'autre à une idée, je suis preneur ! Merci.

Re: Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 11:32

Ben visiblement c'est chiant de travailler sous windows !!! Tu peux même pas faire une copie de fichier...
Ca marche sur mon linux. 8-) 8-)

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 11:22

Résultat:
Warning: copy(xls/testé.txt): failed to open stream: No such file or directory in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\SandboxPhp\tauxerreur.php on line 55
beurk, ca pouire, copie pas possible !!!
Le fichier n'est pas accessible en lecture ! = xls/testé.txt

Précision:
Ligne 55
if(!copy($fileName,'xls/toto.txt')){

Re: Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 11:18

Tu as un souci d'encodage de tes pages
Fais ça alors :
$fileName = 'xls/testé.txt';

    if(!copy($fileName,'xls/toto.txt')){
        echo 'beurk, ca pouire, copie pas possible !!!';
    }else{
        echo 'copie ok';
        $fileName='xls/toto.txt';
    }


if (is_readable($fileName)) {
    echo 'Le fichier est accessible en lecture = '. $fileName;
} else {
    echo 'Le fichier n\'est pas accessible en lecture ! = '. $fileName;
}

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 11:15

Résultat de ton code arnaud69 :
strtr OKLe fichier n'est pas accessible en lecture ! = xls/testyn.txt

Je ne sais absolument pas d'où vient le yn dans "testyn.txt'

Re: Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 11:07

if($fileName = strtr('xls/testé.txt', 'áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', 'aaaaaaceeeeiiiinooooouuuuyy')){
    echo 'strtr OK';
}else{
    echo 'strtr NOK, on va le copier sous un autre nom :';
    if(!copy($fileName,'xls/toto.txt')){
        echo 'beurk, ca pouire, copie pas possible !!!';
    }else{
        echo 'copie ok';
        $fileName='xls/toto.txt';
    }
}

if (is_readable($fileName)) {
    echo 'Le fichier est accessible en lecture = '. $fileName;
} else {
    echo 'Le fichier n\'est pas accessible en lecture ! = '. $fileName;
}

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 11:06

Une bidouille possible, si le fichier existe vraiment et si tu as un accès via un explorateur est de le renommer:
Tu pourrais te servir de Filezilla qui est un client ftp gratuit et libre.
Au pire le télécharger en local, le renommer et le renvoyer sur le serveur distant.
Merci sirakawa, c'est une solution qui aurait pu être viable seulement quand je dis que ne peut pas le renommer c'est que je n'ai pas le droit de le renommer.
Attention, j'ai les droits de Lecture/Écriture/Modification sur le fichier, mais je n'ai pas le droit car c'est un fichier qui n'est pas utilisé que par moi.
Je suis donc obligé de faire avec l'accent malheureusement. :(

Re: Ouvrir fichier avec accent

par sirakawa » 25 sept. 2014, 11:02

Une bidouille possible, si le fichier existe vraiment et si tu as un accès via un explorateur est de le renommer:
Tu pourrais te servir de Filezilla qui est un client ftp gratuit et libre.
Au pire le télécharger en local, le renommer et le renvoyer sur le serveur distant.

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 10:57

Code : Tout sélectionner

$fileName = 'xls/testé.txt'; if (is_readable($fileName)) { echo 'Le fichier est accessible en lecture = '. $fileName; } else { echo 'Le fichier n\'est pas accessible en lecture ! = '. $fileName; }
Avec ce code j’obtiens que le fichier n'est pas accessible en lecture.

J'ai aussi essayé de cette manière:

Code : Tout sélectionner

$fileName = 'xls/teste.txt';
mais toujours inaccessible.

Re: Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 10:51

Ok, alors mets ton code et on va aller jouer avec ça :

Code : Tout sélectionner

$str = strtr($str, 'ÁÀÂÄÃÅÇÉÈÊËÍÏÎÌÑÓÒÔÖÕÚÙÛÜÝ', 'AAAAAACEEEEEIIIINOOOOOUUUUY'); $str = strtr($str, 'áàâäãåçéèêëíìîïñóòôöõúùûüýÿ', 'aaaaaaceeeeiiiinooooouuuuyy');

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 10:39

Normalement le fichier est sur un serveur distant mais afin de faciliter la compréhension de l'erreur je suis en local sur ma machine.
J'ai donc Apache2 , PHP, ... d'installer sur ma machine. Donc tout est en local.

Re: Ouvrir fichier avec accent

par arnaud69 » 25 sept. 2014, 10:37

Mais c'est sur un serveur distant (ou local) ou en usage normal comme utilisateur d'un ordi ?
Je comprends pas trop...

Re: Ouvrir fichier avec accent

par Nato24C » 25 sept. 2014, 10:35

J'ai oublié de préciser en effet: Windows malheureusement.
Il faudrait que je le copie en php alors ? Mais l'accent ne me causera pas le même problème en voulant le copier ?