Bonjour,

le sujet n'ayant pas un lien direct avec l'accessibilité, je poste au bar...
J'ai un petit problème avec la version 1.9 de Spip. De temps en temps les pages s'affichent mal, les é s'affichent é, même chose pour les autres lettres accentuées.
Je ne trouve pas d'info sur le site http://www.spip-contrib.net ou http://www.spip.net.

Pensez-vous que c'est un problème de spip ou de serveur ?

Mes pages commencent par :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="fr">


Peut être faut-il ajouter quelque chose ?

Ce qui est bizarre c'est que quand on "rafraichit" l'écran, tout rentre dans l'ordre...
Modifié par codascii (02 Sep 2006 - 12:40)
codascii a écrit :
le sujet n'ayant pas un lien direct avec l'accessibilité, je poste au bar...

Il s'agit à priori d'une question d'encodage.
Je déplace le sujet. Smiley smile
À vue de nez, je dirais qu'un contenu en UTF-8 est affiché en iso-8859-1 par le navigateur, à qui il manque une information sur l'encodage du contenu, ou qui a reçu une information erronée.
L'information correspondant à l'encodage se trouve dans les en-tête HTTP de la page. Tu peux les visualiser via des outils spécifiques, ou via un outil en ligne. Par exemple : http://tools.apocalx.com/entete-http/
Bonsoir,

ce qui est bizarre c'est que quelquefois un simple rafraichissement d'écran suffit, parfois il faut recalculer la page.
Je suis allé sur tools.apocalx.com mais je ne sais pas tout interpréter Smiley confused

[#008080]Entête  HTTP:URL:  http://netia59a.ac-lille.fr/~douaiwaziers/
HTTP/1.1 200 OK 
Date: Thu, 31 Aug 2006 19:43:37 GMT 
Server: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.3.10-16.kwartz.0 
X-Powered-By: PHP/4.3.10-16.kwartz.0 
Vary: Cookie,Accept-Encoding 
Composed-By: SPIP 1.9 @  www.spip.net  
Connection: close 
Last-Modified: Thu, 31 Aug 2006 19:03:21 GMT 
Content-Type: text/html; charset=iso-8859-1 [/#]


C'est un serveur sous Kwartz et Linux, là ça va, c'est du spip 1.9 pareil mais c'est après charset=iso-8859-1, ça devrait aller j'avais lu un échange sur ce site entre charset=iso-8859-1 et charset=iso-8859-15... Il manque peut être l'info sur UTF-8.
Je vais revérifier l'en-tête des pages de mon squelette et des autres pages en php...
Je vous tiens au courant s'il y a une différence...
Modifié par mpop (01 Sep 2006 - 10:52)
L'en-tête HTTP déclare un contenu en iso-8859-1. Or, il semblerait que tu aies au moins un contenu en UTF-8.

Pour info, que dit la balise META de ta page au sujet de l'encodage ?

Si ton contenu est censé être en UTF-8, il y a peut-être une configuration du serveur (via un fichier .htaccess pour Apache) à faire.

Si par contre ton contenu est censé être en iso-8859-1, il faut vérifier d'où viennent les contenus qui ne passent pas :
- toute la base de données ?
- des éléments de la maquette ?
- autre ?
Et dans ce cas corriger les contenus en question.

Que dit SPIP sur l'encodage des caractères ? Il t'a demandé d'en choisir un à l'installation ?
Bonjour mpop,

ça commence à devenir plus clair pour moi avec ton dernier post Smiley smile
Je suis allé voir dans la configuration de spip, je suis en utf-8 par contre comme le site était en test, je n'avais pas encore pris la peine de remplir les balises META Smiley rolleyes
Dans l'en-tête de mes pages j'ai les lignes suivantes :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="fr">
<head>
<title></title>
	<meta name="description" content=""/>
	<meta name="keywords" content=""/>
	<meta name="author" content=""/>
	<meta name="copyright" content=""/>
	<meta name="robots" content="index, follow"/>
	<meta name="expires" content="never"/>

Je vais donc indiquer que le contenu est en uft-8 et je reposte ensuite...
Au plus tard ce sera ce soir !
Bonjour,

j'ai ajouté la balise :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

à mes pages et la majorité de mes lettres accentuées a disparu !

En fait je pense tester la solution suivante :
- mettre dans la balise meta un encodage en iso-8859-1 ;
- changer uft-8 en iso-8859-1 dans la configuration de spip ;
- traduire ma base d'uft-8 en iso-8859-1. Je pense avoir lu un article à ce sujet sur le forum, il suffit que je le retrouve... En gros, il fallait exporter ma base, la traduire avec une "moulinette" en php puis la ré-injecter. ça va être long mais je pense que ça peut marcher car je suis sur un serveur où il y a plusieurs sites et j'ai vu qu'un autre site spip était codé en iso-8859-1...

Je vous tiens au courant.
Modifié par codascii (02 Sep 2006 - 12:41)
Bonjour,

En fait tout fonctionne en ajoutant
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
.
J'avais bien vidé le cache sur le serveur mais pas l'historique de mon navigateur...
Merci à vous !