Détecter encodage et conversion vers UTF8

bruno9292 Messages postés 1 Date d'inscription vendredi 13 juin 2008 Statut Membre Dernière intervention 13 juin 2008 - 13 juin 2008 à 11:34
GillesWebmaster Messages postés 496 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 29 juillet 2009 - 28 avril 2009 à 16:49
Bonjour,

pour faire simple, j'ai une chaine, dont je ne connais pas l'encodage (ça peut etre UTF8, ISO8859-1, ISO8859-15, etc...) et j'aimerais la convertir en UTF8 sans utiliser les entités html pour l'insérer dans notre BDD.
Petit soucis, ça coince sur certains symboles spciaux comme l'€ (pris en charge par iso8859-15 mais pas par iso8859-1)

J'ai essayé de convertir avec iconv et mb_convert_encoding, mais l'€ disparait à chaque fois.
on a pensé utiliser htmlentities mais le problème, c'est qu'il faut connaitre l'encodage, or la fonction détecter l'encodage ne marche pas tout le temps...

Une idée ?

merci d'avance !

2 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
13 juin 2008 à 13:08
Hello,

les problèmes d'encodage, c'est toujours TRES compliqué.
Moi, je te conseille la conversion en entités décimales plutôt (façon XML).
C'est ce que je fais pour gérer différentes langues, et ça fonctionne plutôt très bien.
Le problème étant que la BDD devient illisible en direct (enfin, quand on est en multilingue, si c'est juste du français avec quelques caractères spéciaux en entités, ça reste jouable).
0
GillesWebmaster Messages postés 496 Date d'inscription mercredi 30 juin 2004 Statut Membre Dernière intervention 29 juillet 2009 1
28 avril 2009 à 16:49
Bonjour,



Malalam, pourrais-tu préciser?



Merci




Bonne Journée
GillesWebmaster



<hr size="2" />
0
Rejoignez-nous