36-15 mylife
Bon c'est l'intro est c'est chiant sautez directement aux problèmes si vous avez pas le temps de lires des conneries :lol:
Bonjour , je suis pas du genre à demander aux autres de l'aide en général , mais la je vien de passer la nuit à essayer de résoudre un problème et je me suis bien cassé les dents... :mrgreen:
J'imagine que c'est surement un problème à la con.
En faite j'essaye de parser un flux xml , qui au départ était codé en ISO-8559-1 , et j'arrivai pas à men sortir vu que le charset de la bdd mysql était en utf-8 ...( enfin je pensai que ça venai de la au début)...
Donc après 2 heure de recherche j'ai fini par dire bon , je passe le flux en utf8 au lieu de m'emmerder , sauf que j'ai un gros problème toujours.
J'avais utilisé le dom pour parser et j'ai décider pour le fun et aussi parce que j'ai entendu qu'il était mieux pour les gros fichier de parser avec le sax ... Au final ( je trouve qu'il est plus lent pour info...).
Début du problème
si je fait un echo de ma variable dans mon switch elle sort à peu pres bien mais avec un décalage qui est reglé une fois que lencodage du navigateur est sur utf8 exemple pour Résine = R (saut de ligne) ésine réglé si je met les param du nav sur utf8 car j'ai pas fait de header c'est juste pour tester .
Sauf que la ou ça se corse c'est quand je passe ma variable en global La lettre R disparai du mot et pratiquement tout mes mots avec un accent é se retrouve tronqué d'une partie du mot parfois une bonne partie de la phrase .
Je vois pas de solution à mon problème j'ai besoin des variables globales car je stock les info dans la bdd, j'ai tester utf8_encode decode ( a priori j'en ai pas besoin car pas de iso... mais bon tout est bon à tester ).
Dans la bdd les mots son également tronqué , j'ai vraiment réussi à traquer le problème au niveau du passage en variable global.
Je suis pas trop famillié avec les codages mais le flux est par endroit codé avec du html genre & et les accents eux ne sont pas codé en tout cas rien de visible , il sont tel qu'elle dans le flux et à part le type de codage en début du flux j'ai vois pas trop de différence avec l'iso que j'avais pris au début.
dans le php j'ai mis les choses suivante , car j'ai eu la surprise en faisant un mb_jesaislusquoi de voir que j'était en iso alors j'ai forcé en mettant ça
mb_internal_encoding("UTF-8");
et ça avant les autres query.
mysql_query("set names utf8;");
fin du problème
mendicité d'aide
J'ai vu que certaines personnes avais des problèmes similaires, mais celui la est assez particulier je doit dire , j'ai vu des fonctions bien sympa avec de l'unicode mais en proto et seulement sur php6 quoi qu'il en soit je suis même pas sur que ça m'aurai aidé, si quelqu'un à déjà parsé un flux de tradedo*** et peu me filer un coup de main je lui serai vraiment reconnaissant !
Bon c'est l'intro est c'est chiant sautez directement aux problèmes si vous avez pas le temps de lires des conneries :lol:
Bonjour , je suis pas du genre à demander aux autres de l'aide en général , mais la je vien de passer la nuit à essayer de résoudre un problème et je me suis bien cassé les dents... :mrgreen:
J'imagine que c'est surement un problème à la con.
En faite j'essaye de parser un flux xml , qui au départ était codé en ISO-8559-1 , et j'arrivai pas à men sortir vu que le charset de la bdd mysql était en utf-8 ...( enfin je pensai que ça venai de la au début)...
Donc après 2 heure de recherche j'ai fini par dire bon , je passe le flux en utf8 au lieu de m'emmerder , sauf que j'ai un gros problème toujours.
J'avais utilisé le dom pour parser et j'ai décider pour le fun et aussi parce que j'ai entendu qu'il était mieux pour les gros fichier de parser avec le sax ... Au final ( je trouve qu'il est plus lent pour info...).
Début du problème
si je fait un echo de ma variable dans mon switch elle sort à peu pres bien mais avec un décalage qui est reglé une fois que lencodage du navigateur est sur utf8 exemple pour Résine = R (saut de ligne) ésine réglé si je met les param du nav sur utf8 car j'ai pas fait de header c'est juste pour tester .
Sauf que la ou ça se corse c'est quand je passe ma variable en global La lettre R disparai du mot et pratiquement tout mes mots avec un accent é se retrouve tronqué d'une partie du mot parfois une bonne partie de la phrase .
Je vois pas de solution à mon problème j'ai besoin des variables globales car je stock les info dans la bdd, j'ai tester utf8_encode decode ( a priori j'en ai pas besoin car pas de iso... mais bon tout est bon à tester ).
Dans la bdd les mots son également tronqué , j'ai vraiment réussi à traquer le problème au niveau du passage en variable global.
Je suis pas trop famillié avec les codages mais le flux est par endroit codé avec du html genre & et les accents eux ne sont pas codé en tout cas rien de visible , il sont tel qu'elle dans le flux et à part le type de codage en début du flux j'ai vois pas trop de différence avec l'iso que j'avais pris au début.
dans le php j'ai mis les choses suivante , car j'ai eu la surprise en faisant un mb_jesaislusquoi de voir que j'était en iso alors j'ai forcé en mettant ça
mb_internal_encoding("UTF-8");
et ça avant les autres query.
mysql_query("set names utf8;");
fin du problème
mendicité d'aide
J'ai vu que certaines personnes avais des problèmes similaires, mais celui la est assez particulier je doit dire , j'ai vu des fonctions bien sympa avec de l'unicode mais en proto et seulement sur php6 quoi qu'il en soit je suis même pas sur que ça m'aurai aidé, si quelqu'un à déjà parsé un flux de tradedo*** et peu me filer un coup de main je lui serai vraiment reconnaissant !