On 2006-05-15 08:57:01 +0200, christian lefebvre <christian.lefebvre@atosorigin.com> said:
On Sat, 2006-05-13 at 17:54 +0200, Jerome Carujo wrote:
Quels sont les autres précisions techniques qui pourraient être utile
?
Déjà, peut tu préciser ce que tu vois sur le site : là ou il devr ait
y avoir un "é", tu vois un "?" un carré, ou un "é" (A majuscule ti lde,
copyright) ?
Comme tu n'as plus accès à la version précédente de mysql, c'est
difficile de savoir ce qui a changé, cependant, j'ai l'impression que
ton hébergeur a changé le charset de la base en même temps que sa
version (celui utilisé pour la connexion à priori, et pas celui pour
le stockage, ou alors c'est qu'ils sont vraiment sauvages
).
Pour en savoir plus, il faudrait essayer les choses suivantes, via un
phpMyAdmin ou une console mysql si tu y a accès.
Tout d'abord, repérer un ancien article contenant des accents dans
l'un des champs (titre, surtitre ...) autres que le texte (qui est
géré de façon particulière en spip). S'il c'est le titre de l'artic le
42 par exemple, faire maintenant :
select char_length(titre), length(titre)
from spip_articles
where id_article=42;
Si le char_length et le length ont des valeurs différentes, c'est que
la base stocke les données en utf.
L'écart entre les deux doit être égal au nombre de lettres
accentuées dans le texte (en clair, en utf, il faut 2 octets pour
stocker un "é").
Maintenant (si le texte est assez court pour le faire à main, sinon,
c'est pénible), si le char_length est différent de ce que tu peux
compter à la main (sans oublier les retours à la ligne et les espaces),
c'est que spip écrit de l'utf que mysql prend pour le l'iso.
Dans ce cas, la solution consiste peut être simplement à mettre
spip_query("set names 'utf8'");
juste après le spip_connect_db(...) dans le fichier
ecrire/inc_connect.php3
--
À+, Pif.
On Tue, 2006-05-16 at 07:46 +0200, Jerome Carujo wrote:
Voici ce que ca m'a donné
Titre (une seule lettre accentuée, un e majuscule qui donne A
majuscule tilde copyright.
Nouveau dessin animÃ(c) pour Hayao Miyazaki
Résultat de la commande dans phpmyadmin
char_length(titre) 41
length(titre) 41
J'ai donc l'impression que le résultat est correct !
Dans la config spip, tu as précisé utf-8 c'est bien ça ?
Dans tes squelettes, il y a bien une balise meta avec #CHARSET ?
est-ce que le site est visible en ligne, que je puisse regarder ?
--
À+, Pif.
-------------------------
Oui, le site est en ligne et en y regardant de plus près (ce n'est pas vraiment mon site, c'est un site que j'ai mis en place pour une amie prof de français qui l'utilise dans la cadre de son cours), c'est un joyeux mélange de tout (A majuscule tilde copyright, points d'interrogation, et accents corrects)...
_<;;;
il est visible à cette adresse http://jef.journal-fle.net/
Encore merci de l'aide ^_^b
Jerome