MyBB.support, le portail francophone de MyBB
[Résolu] ISO-8859-1 vers UTF-8 - Version imprimable

+- MyBB.support, le portail francophone de MyBB (https://mybb.support)
+-- Forum : Archives (https://mybb.support/forum-25.html)
+--- Forum : Archives techniques (https://mybb.support/forum-27.html)
+--- Sujet : [Résolu] ISO-8859-1 vers UTF-8 (/thread-334.html)



[Résolu] ISO-8859-1 vers UTF-8 - CrazyCat - 11-06-2007

Bonjour à tous...

Je croyais me souvenir qu'il existait un convertisseur iso => utf pour mybb, mais impossible de remettre la main dessus sur les différents forums de la communauté.
Est-ce que ça rappelle quelque chose à quelqu'un? sinon, je le referais dès que possible.

Merci bien Smile


RE: ISO-8859-1 vers UTF-8 - spyto - 11-06-2007

Salut CrazyCat,

J'ai trouvé ça sur le web, je cite:

Code :
J'ai trouvé une solution super efficace sur le net... et pour une fois Microsoft va bien nous dépanner..

1) faire un dump de la table ISO (fichier texte)
2) l'ouvrir sous notepad
3) faire un enregistrer sous

et là miracle il y a une option de format. il n'y a plus qu'a choisir UTF-8

c'est fini

reste à remonter le fichier dans la base.

A+

PS : Il faut un windows XP pack 2 pour que çà fonctionne.

Je ne sais pas ce que ça vaut...

Sinon, une fois avoir fait le dump avec PhpMyAdmin par exemple, il y a des tas d'éditeurs capables d'enregistrer sans souci en UTF-8.
Pour ma part j'utilise EmEditor que je trouve super pratique et efficace !

@+
Spyto


RE: ISO-8859-1 vers UTF-8 - CrazyCat - 11-06-2007

Je connais cette méthode, mais elle me semble inutilisable dans le cas de gros forums: j'ai testé un merge d'IPB vers MyBB, la base fait plus de 30Mo.
Cela signifie qu'il n'est pas possible d'injecter le dump d'un coup (la taille est habituellement limitée à 2Mo).

D'où l'interêt d'un script (relativement simple) qui créera des tables temporaires dans lesquelles il convertira en utf8 les champs de type varchar et text (ou blob) et qui ensuite mettra les données traitées à leur place.


RE: ISO-8859-1 vers UTF-8 - spyto - 11-06-2007

Salut,

Oui je vois ce que tu veux dire.
Mais je ne suis pas assez "calé" en PHP !

Il faut certainement "lire" la table séquentiellement et la transformer à l'aide de la fonction UT8_encode() ? Non ?

Juste quelques pistes qui pourront t'aider, j'espère...

Une info ici:
http://z720.net/blog/archives/2005/09/21/convertir-wordpress-en-utf-8

Une autre là:
http://climbtothestars.org/archives/2004/07/18/converting-mysql-database-contents-to-utf-8/

qui utilise l'outil ICONV (lorsqi'il est possible de l'utiliser!!...):
http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html

@+


RE: ISO-8859-1 vers UTF-8 - CrazyCat - 12-06-2007

Ne t'inquiète pas, je vais faire l'outil adéquat (et surement le passer en plugin MyBB)


RE: ISO-8859-1 vers UTF-8 - tidoudoux - 14-06-2007

La dernière fois que j'ai fais un dump avec phpMyAdmin le fichier généré etait en UTF-8 alors que la base était en ISO-8859-1, il semble donc qu'il fasse la conversion tout seul.

Il te suffirait donc de faire un dump de la base avec phpMyAdmin et ensuite de redonner le fichier généré à manger à ta base. (En fait ça m'est arrivé en voulant restaurer une base et du coup je m'était retrouvé avec du texte UTF-8 enregistré dans une base ISO-8859-1, c'est pas terrible à l'affichage :p )


 Utilitaire de traduction fourni par Regentronique