OVH Community, votre nouvel espace communautaire.

release ipsconfig3 ovh - probleme encodage utf8


Operceval
29/10/2014, 08h27
bonjour

essai de partir du dump selon l origine de ta base peut être ?

mysql -D TaBase -u User -p --default_character_set iso-8859-1 < tabase.sql

ou

mysql -D TaBase -u login -p --default_character_set utf8 < tabase.sql

cassiopee
29/10/2014, 00h37
Ce genre de situations vient d'une différence d'encodage de caractères quelque part.

Afin que les accents soient affichés correctement, il faut que tout, absolument tout, soit dans le même jeu de caractères,
donc soit iso-8859-1 (latin1) partout, soit en Unicode (utf-8) partout.

De nos jours, on cherche en général à ce que tout soit en Unicode.

Pour cela il faut :

1) que les données de la base soient en Unicode (donc cf le "collation" des colonnes/tables + conversion des données au besoin)
2) que les données de la base soient transmises en Unicode au PHP via les résultats les requêtes SQL exécutées en PHP
(requête SQL "SET NAMES=utf8" à exécuter en début de script)
3) que les scripts PHP soient eux-même encodés en Unicode (généralement sans BOM)
4) que les fichiers HTML (template) lus par les scripts soient encodés en Unicode
5) que les entêtes http/html précisent que la page web est encodée en Unicode (balise html "meta / Content-Type")
5 bis optionnel) que le serveur web (Apache) utilise l'Unicode par défaut (directive DefaultCharset)

et là, en principe, on atteint le Graal, le Nirvana

Bien entendu, on n'est pas obligé d'utiliser tous ces vecteurs en même temps
mais si certains d'entre eux sont en Unicode et d'autres en latin1, c'est là que les ennuis commençent.

flashgames
28/10/2014, 21h36
Citation Envoyé par Nexusinfo
Ce que je ne comprends pas, c'est pourquoi, lorsque je change le codage du navigateur IE8 en ISO Occidental, les accents s'affichent bien pour les pages web, mais pas pour les infos lu dans une BDD ?
J'ai le même souci que toi en 2014, à peu de chose près...
A tu trouvé une solution ?

Nexusinfo
17/01/2010, 13h38
Ce que je ne comprends pas, c'est pourquoi, lorsque je change le codage du navigateur IE8 en ISO Occidental, les accents s'affichent bien pour les pages web, mais pas pour les infos lu dans une BDD ?

Nexusinfo
17/01/2010, 13h21
Bonjour thibotus01 et MasterPrenium, et merci d'avoir prit de votre temps pour me répondre.

J'ai tout mit en UTF-8.
Dans le fichier charset d'apache2, et dans le php.ini

Dans my.cnf je ne trouve rien qui parle d'encodage. J'ai regardé dans tous les fichiers du répertoire mysql.

DAns phpmyadmin, l'interclassement de toutes mes table est " utf8_general_ci " et le Jeu de caractères pour MySQL: " UTF-8 Unicode (utf8) "

Et dans ispconfig, la bdd est au format UTF-8


Et pourtant, le forum PunBB fraichement installé me retourne :
Vous n'�tes pas identifi�.
Dans le forum, j'ai :
Là, je sèche...je désespère...

Aurais-je oublié de vérifier quelque part encore ?

Merci à vous.

Eric

MasterPrenium
17/01/2010, 12h51
Tes bases ne sont donc pas en utf-8.
Tu peux aussi regarder dans le fichier my.cnf MySQL les valeurs des "default-character-set="

Nexusinfo
16/01/2010, 18h49
Bonsoir à tous,

je suis désespéré. Depuis 8h du matin je cherche comment régler ce bug.

J'ai un dédié avec la release ispconfig3 sur debian5 lenny 32 bits.

Toutes les pages web/BDD MuSQL qui sont en charset=UTF-8 présentent un problème avec les accents.

Lorsque je passe l'encodage de la page web en "iso-8859-1", c'est OK, sauf pour les accents présents dans les bases de données, qui sont évidemment encodées en UTF-8...

J'ai tenté en modifiant le fichier charset d'apache2 pour y activer différents charset, je ne trouve aucune configuration correcte afin de corriger ce bug d'accents sur Apache et MySQL.

J'ai aussi testé en modifiant le charset dans la config ini de php5...

Vu qu'a la base je n'avais rien touché niveau charset, j'en déduis qu'il y a potentiellement un bug dans la conf d'ispconfig quelque part pour l'encodage?

En vous remerciant par avance pour votre aide.

Eric