Aller au contenu

Encodage charset=iso-8859-1


Sujets conseillés

Guest dubastiste
Posté

Coucou,

j'ai regardé sur le forum mais je ne vois pas vraiment la réponse à ma question donc je vais la poser.

Mon script php à un répertoire "template" , dans ce répertoires, de nombreux fichiers html. Est-il nécessaire de mettre <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> dans chaque fichier html ?

Parce que Webexpert par exemple (certains ne l'apprécie pas, j'en suis déja certain :rolleyes: ) est configuré de base pour réencoder toutes les pages qui ne le sont pas. (même les php)

Merci pour votre aide B)

Posté (modifié)

C'est préférable : un navigateur ne peut pas "deviner" l'encodage d'un fichier, et iso-8859-1 n'est défini nulle part comme étant "l'encodage par défaut" (me semble-t-il).

Modifié par MarvinLeRouge
Posté
C'est préférable : un navigateur ne peut pas "deviner" l'encodage d'un fichier, et iso-8859-1 n'est défini nulle part comme étant "l'encodage par défaut" (me semble-t-il).

C'est vrai et faux à la fois.

Le serveur Apache peut servir iso-8859-1 par défaut... on peut vérifier cela avec analyseur d'entêtes http du Hub ;)

Dan

Posté

Je suis tout à fait d'accord avec Dan et je reformule donc : que iso-8859-1 soit l'encodage par défaut de ton serveur Apache est une chose; que le navigateur client le sache en est une autre :)

Guest dubastiste
Posté (modifié)

D'accord,

c'est parce que quand je regarde la source à certains moments, il y a plein de <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">...

Ca fait pas très pro je trouve.

Apparement le site fonctionne bien sans donc je crois que je vais laissé ainsi sauf si certains Internautes me disent que la page est illisible ou presque.

Merci pour vos réponses et désolé du retard.

PS: Bizarre, je ne sais plus édité mon premier post pour ajouter [résolu] :blink:

Modifié par dubastiste
Posté
D'accord,

c'est parce que quand je regarde la source à certains moments, il y a plein de <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">...

Ca fait pas très pro je trouve.

:blink: Euh... pourquoi donc ???

Déclarer l'encodage de tes pages c'est essentiel. Le premier pékin venu avec un encodage différent sur son navigateur ne pourra pas lire ta page. Là, oui, çà ne ferait pas très pro effectivement.

Posté

Une (re)définition du Content-Type à travers un header() en PHP, et il n'y a plus à se préoccuper de la config d'Apache (= portabilité accrue)

Cette meta ne sert pour ainsi dire à rien, sauf dans le cas d'une page qu'on aurait téléchargé.

Donc, pensez quand même à la mettre. Mais n'oubliez pas qu'elle ne représente presque rien : dans la liste des priorités du choix de l'encodage, elle apparaît en dernière position.

1/ Config d'Apache (ou redéfinition à partir d'un envoi d'un entête HTTP par un langage de script côté serveur (exemple: header() en PHP))

2/ Le prologue XML (<?xml version="1.0" encoding="iso-8859-1"?> par exemple)

3/ La meta Content-Type

Posté

Mais:

- toutes les pages du monde ne sont pas dynamiques. Donc le header PHP n'a pas lieu d'être dans ces cas là

- Le prologue XML a le chic pour faire passer Internet Explorer en quirks mode. Et IE en quirks mode, c'est quelque chose :huh:

Quoiqu'il en soit, UTF-8 powaa :smartass:

Posté

En même temps, la petite page perso de monsieur X utilise rarement l'UTF-8 ^_^

Passer par une définition systématique par entêtes HTTP à partir d'un langage de script côté serveur ça peut paraître bourrin, mais ça permet au moins d'être certain que, quelle que soit la config d'Apache, tout ira bien.

Quand au prologue XML, il est quand même conseillé de le mettre ^_^

Mais bien sûr, si ça fait bugger l'affichage de la page, tant pis.

Guest dubastiste
Posté

Bonsoir,

oula ca devient compliqué :fou:

récapitulons une petit fois, votre conseil est que je place la balise <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> sur toutes les pages html qui sont dans mon répertoire template ?

Merci en tout cas pour l'interet que vous portez à ma question ;)

Posté

Met-le à chaque page, oui ;)

Au passage, juste un doute...

il y a plein de <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
J'espère que tu n'as pas plusieurs fois par page hein :P
Guest dubastiste
Posté
il y a plein de <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

J'espère que tu n'as pas plusieurs fois par page hein  :P

Non :rolleyes:

ce que je voulais dire, c'est lorsque je regarde la source de l'index,

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> apparait plusieurs fois étant donné que plusieurs fichiers templates sont chargés.

Posté

Bonjour,

C'est ce que Elentar voulait dire. Dans les pages telles qu'elles apparaissent aux visiteurs du site, tu dois avoir un seul

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Il doit se trouver dans l'en-tête des pages entre le <HEAD> et le </HEAD>. Si tu as un template header ou quelque chose comme ça, c'est là et uniquement là qu'il faut le placer.

Jean-Luc

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...