Fork me on GitHub

Rapport de message :*
 

Convertir les caractères ISO-8859-1 vers UTF-8 de ma base

Titre du sujet : Convertir les caractères ISO-8859-1 vers UTF-8 de ma base
par olico sur 01/02/2007 15:07:44

Bonjour,

voici un problème qui semble toucher pas mal de monde mais les solutions à ce problèmes sont souvent confus et peu pratiques pour l'utilisateur novice.
Il manque un vrai pas à pas avec une description précise de la marche à suivre.

Mon site : http://www.harmonieregioncentre.com/
fonctionne avec le jeu de caractère ISO-8859-1 (latin1) et il est multilangue.
Jusqu'ici tout fonctionne très bien.
Or je décide d'installer XoopsGallery basé sur Gallery2 :
http://xoopsgallery.org/
http://gallery.menalto.com/

Cette webApp utilise le codage UTF-8, c'est là que les problèmes commencent.
Dès que je charge xoopsgallery dans mon site xoops, la page Gallery donne des caractères accentués remplacés par des ?.

Je décide donc après migration de ma base sur un serveur MySQL 4.1 (qui gère l'utf-8) de convertir ma base de donnée.
Nouveau problème, les caractères accentués sont sous forme brute (c-à-d. les « é » ne sont pas sous leur entité html, « é »)
Je trouve une aide ici :
http://www.spip-contrib.net/Comment-passer-son-site-en-utf-8
cette procédure est fastidieuse et au final, j'ai pas mal d'erreurs dans ma base (j'ai supprimé des caractères en faisant des remplacements par lot).

Je recharge ma nouvelle base de donnée avec les entités html dans MySQL.

Enfin je découvre ici :
http://www.xoops.org/modules/newbb/vi ... id=213021#forumpost213021
qu'il faut changer les paramètres du fichier global.php dans "language/french/global.php" (à la racine du site)
je remplace iso-8859_1 par UTF-8.
et là, les caractères accentués sont de nouveau bien affichés.

Je récapitule, il faut :
1- sauvegarder sa base de donnée (après la purge de la table xoops_session pour gagner en légerté)
2- convertir les caractères accentués sous forme « brute » par leur entité html
3- restaurer cette nouvelle base de donnée
4- mondifier le characterset de "language/french/global.php" en UTF-8
5- installer xoopsGallery2

Problèmes :
1- incompatibilité avec les anciens navigateurs qui n'interprètent pas l'UTF-8 (pas grave pour moi).
2- j'ai des caractères accentués remplacés par des ? qui restent dans la partie administration du site, pourquoi?

Questions :
1- Quelqu'un connaît-il une application pour MacOS (ou WINDOWS) qui se charge de la conversion automatique des caractères accentués bruts en entité html?
2- Quelqu'un saurait-il changer xoopsGallery2 pour qu'il soit iso-8859_1 et non UTF-8?
ici, il y a une piste (mais qui ne fonctionne pas chez moi) :
http://codex.gallery2.org/index.php/G ... est.22.._what_is_wrong.3F

Si vous voyez des oublis, faites nous part de vos découvertes.

P.S. il y a une discussion à propos du problème de charset ici :
http://xoopsgallery.org/modules/newbb ... forum=4&post_id=2405#2405
--
olico

xoopsInfo :
Url du site : http://www.harmonieregioncentre.com
Version de Xoops : XOOPS 2.0.16
Thème Xoops : OHRC2
Jeu de templates : default
Version PHP : 4.4.2
Version MySQL : 4.1.22
Logiciel serveur : Apache
Navigateur : Mozilla/5.0 (Macintosh; U; Intel Mac OS X; fr) AppleWebKit/418.9.1 (KHTML, like Gecko) Safari/419.3
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

110 Personne(s) en ligne (77 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 110 | Plus ...