lorik Posté 12 Mars 2017 Posté 12 Mars 2017 Hello, Je m'arrache ce qui me reste de cheveux sur un truc pourtant sans doute basique sur le papier... J'ai 2 tables, en latin1_swedish_ci . La première (cible) est alimentée par des formulaires web. La 2eme (source) par des sources externes de données. Je cherche à alimenter la première avec les données de la 2eme. Pas de problème de script, ça marche. Par contre, les données importées à partir de 'source' ressortent très mal dans la page une fois publiées. Bon, un problème d'encodage, ok, mais je ne m'en sors pas pour trouver quoi faire avec les données importées pour qu'elles soient correctes. j'ai testé avec mb_detect_encoding, les données de ma (source) sont en utf-8, et les données de ma (cible) sont en ASCII. mais impossible de trouver la solution pour transformer mes données source en ASCII avant de les importer... utf8-decode ne donne pas de résultat... Bref, je seche grave... Merci de votre aide.
yannick06 Posté 14 Mars 2017 Posté 14 Mars 2017 (modifié) Hello, Bienvenue dans l'univers étrange de l'encodage, j'ai connu ça aussi, j'y ai laissé pas mal de cheveux mais heureusement ça repousse. Si les sources de données sont nombreuses et multiples tu risque de devoir t'adapter à chacune d'entre elle. Pour ma part j'ai déjà essayé d'appliquer plusieurs fonctions, dans ce genre de cas ça passe ou ça casse, il faut donc tester. Essaye déjà de voir avec ces quelques exemples mais si ça fonctionne pour un ça ne serra peut-être pas le cas pour d'autres $result = mb_convert_encoding($machaine, 'HTML-ENTITIES', 'UTF-8'); $result = utf8_decode(htmlentities((string)$machaine, ENT_COMPAT, 'UTF-8')); $result = htmlentities(utf8_decode($machaine)); $result = htmlentities($machaine); $result = html_entity_decode(utf8_decode($machaine), ENT_COMPAT, 'ISO-8859-1'); $result = utf8_decode($machaine); $result = mb_convert_encoding($machaine, 'ISO-8859-1', 'UTF-8'); $result = iconv('UTF-8', 'ISO-8859-1', $machaine); Bon courage Modifié 14 Mars 2017 par yannick06
lorik Posté 15 Mars 2017 Auteur Posté 15 Mars 2017 Hello, merci de la réponse. après moult tests, en fait, c'était juste un utf8_encode qu'il fallait faire... mais je garde de coté tous tes trucs, j'ai pas de doute que je vais encore ramer, j'ai effectivement d'autres sources....
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant