DotClear 1 à 2 : UTF8
9 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
DotClear 1 à 2 : UTF8
Salut à tous,
Alors je rencontre un petits souci dans la migration de Dotclear 1 à Dotclear 2.
Il s'agit de la gestion de l'UTF8.
Dans la version 1, les tables MySQL sont définies en latin1, mais Dotclear y stocke de l'utf8 à l'intérieur (grâce à un plugin je crois, ou je ne sais plus quoi).
Dans la version 2, l'UTF8 est géré au niveau de la base.
Donc dans les tables de la version 1, j'ai des données dans ce genre:
Société
(accents codés en UTF8 dans un champ non-UTF8, mais ça passe à l'affichage final puisque le charset HTML est UTF8)
Or dans la version 2, les champs étant définis en "utf8_bin", les caractères spéciaux sont gérés en interne, et donc dans PHPMyAdmin on voit les accents de manière correcte.
La question est: comment passer les champs de la version 1 à la version 2, sans passer par PHP (que ça soit MySQL qui gère la transformation des champs).
En clair, il me faudrait un équivalent à "utf8_decode" de PHP, mais sous MySQL (version 5).
J'ai essayé CONVERT et CAST sans grand succès...
Quelqu'un aurait-il une idée ?
Merci par avance!!
P.S.: en plus de ça, on passe de MyISAM à InnoDB, mais je ne pense pas que ça change quelque chose dans mon histoire.
Alors je rencontre un petits souci dans la migration de Dotclear 1 à Dotclear 2.
Il s'agit de la gestion de l'UTF8.
Dans la version 1, les tables MySQL sont définies en latin1, mais Dotclear y stocke de l'utf8 à l'intérieur (grâce à un plugin je crois, ou je ne sais plus quoi).
Dans la version 2, l'UTF8 est géré au niveau de la base.
Donc dans les tables de la version 1, j'ai des données dans ce genre:
Société
(accents codés en UTF8 dans un champ non-UTF8, mais ça passe à l'affichage final puisque le charset HTML est UTF8)
Or dans la version 2, les champs étant définis en "utf8_bin", les caractères spéciaux sont gérés en interne, et donc dans PHPMyAdmin on voit les accents de manière correcte.
La question est: comment passer les champs de la version 1 à la version 2, sans passer par PHP (que ça soit MySQL qui gère la transformation des champs).
En clair, il me faudrait un équivalent à "utf8_decode" de PHP, mais sous MySQL (version 5).
J'ai essayé CONVERT et CAST sans grand succès...
Quelqu'un aurait-il une idée ?
Merci par avance!!
P.S.: en plus de ça, on passe de MyISAM à InnoDB, mais je ne pense pas que ça change quelque chose dans mon histoire.
salut,
jamais essayé mais ceci peu peut etre faire l'affaire:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;
http://dev.mysql.com/doc/refman/5.0/en/alter-table.html#id3240613
a+
jamais essayé mais ceci peu peut etre faire l'affaire:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;
http://dev.mysql.com/doc/refman/5.0/en/alter-table.html#id3240613
a+
ok, quand tu dis tu as essayé, tu peux donner les lignes sql ?!
car à parcourir rapidement la doc
convert et cast en mysql5 semble être fait pour cela :
http://dev.mysql.com/doc/refman/5.0/en/charset-convert.html
car à parcourir rapidement la doc
convert et cast en mysql5 semble être fait pour cela :
http://dev.mysql.com/doc/refman/5.0/en/charset-convert.html
J'ai suivi exactement la doc... par exemple:
Le souci est que la table initiale (blog_categorie par exemple) est définie en latin1, mais contient des données UTF8. Donc MySQL tente de me convertir du latin1 en UTF8.
Et donc là je me retrouve avec les caractères spéciaux de cette manière:
Société
(comme sur Dotclear 1 alors que ça ne devrait pas être le cas)
- Code: Tout sélectionner
INSERT INTO v2_category (SELECT cat_id, \'generatix\', CONVERT(cat_libelle USING utf8), CONVERT(cat_libelle_url USING utf8), CONVERT(cat_desc USING utf8), cat_ord FROM blog_categorie);
Le souci est que la table initiale (blog_categorie par exemple) est définie en latin1, mais contient des données UTF8. Donc MySQL tente de me convertir du latin1 en UTF8.
Et donc là je me retrouve avec les caractères spéciaux de cette manière:
Société
(comme sur Dotclear 1 alors que ça ne devrait pas être le cas)
oki compris (pour l'avoir tester aussi) et convert ne pourra pas fonctionner avec de l'utf8 ds de l'iso car il ne fait que réencoder une deuxième fois l'accent (déjà sous forme de 2 caractères)
je passe donc mon tour, bon courage
je passe donc mon tour, bon courage
-

UsagiYojimbo - WRInaute accro

- Messages: 5185
- Inscription: Mer Nov 23, 2005 10:38
Je veux peut-être dire une grosse connerie, mais j'ai eu un problème de ce genre ce matin. Mais le client MySQL que j'utilise (CocoaMySQL sur MacOSX) permet de forcer le charset de destination. Et en forçant l'utf-8 lors de l'import du script SQL je n'ai plus de souci.
Tu utilises quel soft pour ré-injecter tes données ? Un PhpMyadmin tout bête, une interface fournie par un plugin DC ou un client MySQL logiciel ?
Tu utilises quel soft pour ré-injecter tes données ? Un PhpMyadmin tout bête, une interface fournie par un plugin DC ou un client MySQL logiciel ?
De mémoire, il y a un plugin Dotclear 1 (installé par défaut je crois) pour passer ton blog en UTF-8. Ça te permettra ensuite de passer à Dotclear 2 sans soucis.
Sinon, regarde par là : http://doc.dotclear.net/2.0/admin/1-to-2
Sinon, regarde par là : http://doc.dotclear.net/2.0/admin/1-to-2
9 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- WebRankInfo passe à Dotclear
- Livre La Méthode Google, de Jeff Jarvis - Que ferait Google à votre place ?
- Google Sitemap Generator version 1.3
- Référencer un blog
- La plateforme de blogs TextCube rachetée par Google
- Optimiser le référencement d'un blog Dotclear : balises TITLE et META
- Web 2.0 et au-delà, le livre de David Fayon (préface Pierre Kosciusko-Morizet)
- Comment bien écrire pour le référencement : conseils d'Olivier Duffez
- Comment protéger sa vie privée sur Internet
- Guide complet d'optimisation du référencement d'un blog
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités





le forum