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... :cry:
Quelqu'un aurait-il une idée ?
Merci par avance!! :lol:
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... :cry:
Quelqu'un aurait-il une idée ?
Merci par avance!! :lol:
P.S.: en plus de ça, on passe de MyISAM à InnoDB, mais je ne pense pas que ça change quelque chose dans mon histoire.