utf8-decode foireux, accents transformés en "?" - PHP - Programmation
Marsh Posté le 19-07-2006 à 11:26:21
ReplyMarsh Posté le 19-07-2006 à 12:26:30
Tamahome a écrit : pas de problème avec IIS ;o) |
Tu fais comment pour mettre IIS sous Gentoo ?
Si tu fais une recherche, un topic proche du tiens a ete poste il y a quelque jour (genre hier)
edit : http://forum.hardware.fr/forum2.ph [...] w=0&nojs=0
Marsh Posté le 19-07-2006 à 14:49:31
wine
Marsh Posté le 19-07-2006 à 14:59:07
vivi le xml est bien en utf8, si je met les données brutes dans la base (sans utf8_decode) ca fait des "A bizares" typiques de l'utf
mettre utf8_encode a la place j'ai pas essayé je peux pas le faire de suite car c'est un truc en prod et utilisé cet aprem... mais je pense pas que ca solutionne quoi que ce soit en fait l'appli était avant sur un autre serveur (linux aussi) et ca posait pas de problème donc l'erreur vient a priori pas du code mais plutot de la config du serveur
Marsh Posté le 19-07-2006 à 16:07:31
ReplyMarsh Posté le 19-07-2006 à 16:23:06
omega2 a écrit : Qui a dit : différence dans la config de la base de donnée? |
L'interclassement est "latin1_swedish_ci" donc c'est bien de l'iso trucmuche normalement non ? (le format retourné par utf8_decode)
Marsh Posté le 19-07-2006 à 16:47:21
Un truc auquel je viens de penser : si php ne trouve pas de corespondance entre un code caractére UTF-8 et un code ASCII, il remplace le caractére pas un "?". Es tu sur que le code UTF-8 du caractére accentué que tu utilises n'est pas dans ce cas là?
A noter qu'il existe 2 encodages UTF-8, deux pour le 16 et deux pour le 32 et que dans tous les cas, il y a des similitudes pouvant pousser à une confusion dans la détection de l'encodage. Ca ne m'étonerait pas qu'en fait ton fichier xml ne soit pas dans l'encodage attendus par utf-decode.
Marsh Posté le 19-07-2006 à 10:26:07
Hello all
Problème sur un script PHP qui traite des données XML et les met en base de données mysql.
J'utilise la fonction utf8_decode avant de mettre les données en base, et les accents sont transformés en "?"
C'est un serveur gentoo, avec apache2, PHP, mbstring et le support xml sont installés.
Détail de l'install de PHP : (use flags activés lors de l'install) :
apache2 berkdb bzip2 cli curl expat gd memlimit mysql nls pcre session ssl truetype unicode xml xsl zip zlib
Détail de la config de mbstring (donné par phpinfo) :
Multibyte Support enabled
Japanese support enabled
Simplified chinese support enabled
Traditional chinese support enabled
Korean support enabled
Russian support enabled
Multibyte (japanese) regex support enabled
mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.
Directive Local Value Master Value
mbstring.detect_order auto auto
mbstring.encoding_translation Off Off
mbstring.func_overload 7 7
mbstring.http_input auto auto
mbstring.http_output UTF-8 UTF-8
mbstring.internal_encoding UTF-8 U TF-8
mbstring.language neutral neutral
mbstring.substitute_character no value no value
Si quelqu'un connais le pb et a une solution je suis preneur.
N'hésitez pas à demander des détails sur la config ou autre.
Merci d'avance.
Message édité par Profil supprimé le 19-07-2006 à 10:26:24