Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1548 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [Résolu] Readfile et UTF-8 : problème d'espace.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] Readfile et UTF-8 : problème d'espace.

n°1479212
Beral2
Posté le 21-11-2006 à 13:46:48  profilanswer
 

Bonjour tout le monde,

 

une question que j'avais déjà posée il y a longtemps sans avoir pu obtenir de réponse.

 

Petite précision, si le HTML ou les CSS cela va à peu près, je tiens à préciser que je connais pas grand-chose au PHP que je n'utilise que pour la fonction readfile() qui me permet des "inclusions" (pour le menu notamment qui, si il change, change automatiquement dans tout mon site).

 

Alors :
que cela soit pour mon menu, barre de navigation horizontale ou commentaires qui ne varient pas d'une image à l'autre, j'utilise la fonction readfile() qui insère un fichier au format text (.TXT). Ce fichier texte peut être sauvegardé soit en ANSI, soit en UTF-8 : problème, en ANSI je dois convertir tous mes caractères accentués ou étrangers (farsi par exemple) en &agrave; &ocirc; &Ecirc; etc etc. En UTF-8, je peux écrire "normalement". Pour le farsi (perse/iranien), alors là, à ma connaissance, c'est même impossible. Tout cela pour dire qu'au final, j'enregistre mes fichiers à inclure au format texte .TXT UTF-8. Exemple de l'utilisation de la commande readfile() : <?php readfile('includes/commentaires_jardin-eram.txt'); ?>.

 

FIREFOX (2.0) : aucun problème.
IE (6, le 7 j'ai du mal à l'installer) : problème (ça ne m'inquiétait pas plus que ça, étant donné que c'était IE).
Opéra (9.2) : PROBLÈME ! (là ça m'inquiéte plus).

 

Avec Opéra ou IE, un espace (visuel) est inséré automatiquement AVANT l'insertion. Espace qui se créé UNIQUEMENT si mon .TXT est sauvé en UTF-8, pas s'il l'est en ANSI.

 

En image c'est ici : http://www.albert-videt.eu/photogr [...] ram_00.php
Tout en haut de page (avant navigation dite "horizontale" ), espace créé sous Opéra et IE mais pas sous FIREFOX.
Idem entre la photographie et le texte juste en dessous.

 

Une solution svp ?

 

Merci.

 

P.S. : cela fait (très) longtemps que je me suis penché sur le problème sans y trouver de solution. Si vous pouviez m'indiquer une piste, cela m'aiderait grandement.


Message édité par Beral2 le 14-05-2008 à 18:02:33

---------------
Portfolio
mood
Publicité
Posté le 21-11-2006 à 13:46:48  profilanswer
 

n°1479213
FlorentG
Unité de Masse
Posté le 21-11-2006 à 13:50:57  profilanswer
 

C'est plutôt un problème de CSS qu'autre chose...

n°1479214
Beral2
Posté le 21-11-2006 à 13:55:55  profilanswer
 

Bonjour,
 
non je ne pense pas, pour la barre de navigation horizontale, l'insert ainsi que la CSS qui lui est destiné sont très simples :
 
.TXT : <p class="navigation-horizontale"><a href="/index.php">Accueil</a> > <a href="/photographie/index.php">Photographie</a> > Carnet de route > <a href="/photographie/carnet_de_route/iran_10-2006/iran_introduction.php">Iran, république islamique d' / Jomh&#363;r&#299;-ye Esl&#257;m&#299;-ye &#298;r&#257;n / <span class="farsi">ايران</span></a></p>
 
Bout de CSS :
p
 {
 font-size: 0.7em;
 text-align: left;
 margin: 3px 0px 3px 0px;
 color: #DADAD9;
 }
 
ET
 
p.navigation-horizontale
 {
 font-size: 0.6em;
 margin: 0;
 text-transform: uppercase;
 }
 
Mais le plus troublant est que cela ne se produit pas si mon .TXT est sauvegardé en ANSI !


---------------
Portfolio
n°1479216
FlorentG
Unité de Masse
Posté le 21-11-2006 à 13:57:46  profilanswer
 

Déjà les '>' doivent être convertit en &gt;. Ensuite c'est plus une liste qu'un paragraphe...

n°1479218
FlorentG
Unité de Masse
Posté le 21-11-2006 à 13:58:09  profilanswer
 

Ca peut aussi venir d'un BOM dans le fichier, qu'il faut dégager (ça se fait lors de la sauvegarde)

n°1479225
Beral2
Posté le 21-11-2006 à 14:01:38  profilanswer
 

"... Déjà les '>' doivent être convertit en &gt;. Ensuite c'est plus une liste qu'un paragraphe... "
OK, c'est noté.
 
" ... Ca peut aussi venir d'un BOM dans le fichier, qu'il faut dégager (ça se fait lors de la sauvegarde) ..."
Hum désolé, c'est quoi un BOM ? (pour info j'utilise SciTE comme éditeur mais je passe par notepad (sic) pour les sauver en UTF-8, pas trouvé comment faire avec SciTE).
 
EDIT, ok trouvé pour BOM (http://www.linux-france.org/prj/jargonf/B/BOM.html) mais comment cela peut-il être changé ? Merci.


Message édité par Beral2 le 21-11-2006 à 14:03:47

---------------
Portfolio
n°1479231
FlorentG
Unité de Masse
Posté le 21-11-2006 à 14:05:02  profilanswer
 

Faut regarder dans le logiciel comment faire...

n°1479263
Beral2
Posté le 21-11-2006 à 14:28:15  profilanswer
 

Après avoir lu cela http://fr.wikipedia.org/wiki/Marque_d'ordre_des_octets et cela http://www.unicode.org/unicode/faq/utf_bom.html#BOM, il me semble qu'il me faudrait justement sauver mes fichiers SANS ce BOM. Comment peut-on faire svp ? J'ai cherché avec SciTE, pas trouvé, utiliser un autre éditeur de texte ? Si oui lequel par exemple ? Merci.


---------------
Portfolio
n°1479314
Beral2
Posté le 21-11-2006 à 15:17:32  profilanswer
 

!!! hallelujah !!!
 
Trouvé, avec Notepad++ qui permet l'enregistrement en UTF-8 SANS BOM !
Pour ceux que cela pourrait intéresser, ouvrir le fichier au format UTF-8, LE PASSER D'ABORD EN ANSI (menu Format) puis en UTF-8 sans BOM (ne peut pas passer directement de l'UTF-8 avec BOM à celui sans BOM).
 
Ce problème est à rapprocher de celui de l'apparition du "caractère" "" dans un code source de page HTML.
 
Merci Florent pour la piste.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [Résolu] Readfile et UTF-8 : problème d'espace.

 

Sujets relatifs
charger un xml avec un template xsl en javascript ? [résolu]Problème de copier coller dans Excel
Probleme avec un script java sur une page html[resolu]Delete cascade sans utiliser les foreign keys oO
problème de tri par insertion : à l'aide !!![resolu] automation internet explorer
[resolu] Drop down menuProblème avec structures et prototypage (Résolu)
Trier un tableau sous excel horizontalement avec VBA(résolu) 
Plus de sujets relatifs à : [Résolu] Readfile et UTF-8 : problème d'espace.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR