� a la place des caracteres spéciaux (H
Résolu
dabigben
Messages postés
2110
Statut
Membre
-
dabigben Messages postés 2110 Statut Membre -
dabigben Messages postés 2110 Statut Membre -
Bonjour,
tout est dans le titre, sur de simples pages html publiées par un serveur apache
Tous les caractères spéciaux ont cette forme :�
je ne vois pas d'ou ça peut venir ? d'apache ?
merci!!!
tout est dans le titre, sur de simples pages html publiées par un serveur apache
Tous les caractères spéciaux ont cette forme :�
je ne vois pas d'ou ça peut venir ? d'apache ?
merci!!!
5 réponses
Si les caractères accentués ou autres caractères spéciaux de votre page sont remplacés par des carrés, des points d'interrogation, ou d'étranges séries de lettres comme « é » ou « ç », vous avez probablement un problème d'encodage des caractères.
Le problème le plus courant vient du fait que le navigateur ne sait pas quel encodage utiliser pour afficher la page, soit parce qu'aucune information ne lui est transmise, soit parce que l'information est erronée.
Pour bien comprendre les problèmes d'encodage, il faut distinguer l'encodage réel du document et l'encodage déclaré.
L'ENCODAGE RÉEL D'UN DOCUMENT
Tout document contenant du texte, et c'est le cas également des fichiers « texte brut » en .txt ou .html, sont enregistrés avec un jeu de caractères précis. Ce jeu de caractères, utilisé pour créer ou enregistrer le document, correspond à l'encodage réel du document.
Les encodages les plus fréquents (pour le public français) sont :
* l'ISO-8859-1 (parfois appelé latin1), qui permet d'enregistrer presque tous les caractères du français ;
* l'ISO-8859-15 (parfois appelé latin9), une variation de l'ISO-8859-1, qui rajoute le symbole « euro » et le « l'o dans l'e» ;
* l'UTF-8, qui permet théoriquement d'encoder toutes les langues, du français au japonais en passant par l'arabe.
Pour être sûr de l'encodage des caractères de vos pages HTML, vous pouvez vérifier dans les paramètres de configuration de votre éditeur (Dreamweaver, Notepad++, Bluefish, etc.) quel est l'encodage utilisé par défaut. Certains éditeurs affichent également l'encodage d'un fichier ouvert (s'ils parviennent à le déterminer), et permettent d'enregistrer le fichier dans un encodage différent.
ENCODAGE DÉCLARÉ
Une fois que vous connaissez l'encodage utilisé pour vos pages, il faut vous assurer que l'information sera transmise aux navigateurs web. Sans cela, les navigateurs se débrouilleront tout seul, en utilisant par exemple un encodage par défaut, ce qui n'est pas vraiment intéressant : vous n'avez pas envie de vous en remettre à la chance pour décider si votre texte s'affichera correctement ou non, n'est-ce pas ?
Comment est déclaré l'encodage du document ?
Tout d'abord, il doit être déclaré dans les en-tête HTTP envoyés par le serveur avec la page web. Suivant le type de serveur qui héberge vos pages, la procédure pour s'assurer qu'il déclare le bon encodage dans les en-tête HTTP peut changer. On ne détaillera donc pas ici les différentes méthodes pour configurer les informations envoyées par le serveur.
On peut toutefois vérifier quelle information est envoyée par le serveur (surtout si vous soupçonnez un problème d'encodage des caractères) en consultant les en-tête HTTP, par exemple avec l'outil en ligne suivant : http://web-sniffer.net/ (surveiller la ligne « Content-Type » dans le tableau « HTTP Response Header »... si elle ne mentionne aucun « charset », c'est qu'aucun encodage n'est spécifié par le serveur). Voici un exemple de ce que l'on peut obtenir :
Content-Type: text/html; charset=UTF-8
Dans un deuxième temps, on peut ajouter à chaque page HTML une balise META qui répète l'information donnée par l'en-tête HTTP. Cette balise META est utile pour les utilisateurs qui enregistrent les pages web en local, sur leur ordinateur. Voici à quoi elle ressemble :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
L'information donnée par la balise META n'est pas prioritaire. C'est celle fournie par le serveur qui aura systématiquement le dessus. MAIS, si jamais le serveur n'envoie aucune information sur l'encodage du document, le navigateur web cherchera l'information dans cette balise META. C'est pourquoi on se contente parfois de préciser l'encodage dans la balise META, sans prendre la peine de configurer le serveur. ATTENTION TOUTEFOIS, cette pratique n'est pas recommandée !
Il suffit que l'information manque dans une seule page pour qu'alors celle-ci ne s'affiche plus correctement ! Mais certains débutants préfèreront peut-être se contenter de spécifier l'encodage dans la balise META, dans un premier temps de leur apprentissage.
charset charset et charset !!!!
Tu essayerais pas d'afficher des données codées en UTF-8 avec un charset ISO par hasard ?
On peut avoir le code d'une page ?
Tu essayerais pas d'afficher des données codées en UTF-8 avec un charset ISO par hasard ?
On peut avoir le code d'une page ?
ok merci j'ai rajouté cette balise :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
et ai réenregistré mes fichier html dans ce codage
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
et ai réenregistré mes fichier html dans ce codage
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question