2010-08-09 16 views
0

J'ai une erreur de codage de caractères très étrange: J'envoie un champ de texte à un script via la fonction ajax jQuerys. En supposant que je veux envoyer le signe euroErreur de codage de caractères spéciaux étranges

echo $string;

produit

cependant

echo base64_decode(base64_encode($string));

produit

€

des conseils sur la façon dont je pourrais déboguer ce p roblem?

+3

Ce n'est pas un exemple du monde réel, n'est-ce pas? Vous l'encodez sur une page et la décodez dans une autre, n'est-ce pas? Dans ce cas, vous devez nous indiquer quel jeu de caractères ces pages utilisent. –

+1

Je ne vous crois pas. base64_decode (base64_encode ($ string)) devrait renvoyer $ string en arrière. – Artefacto

+0

il doit y avoir un problème avec charset, je ne me souviens pas exactement –

Répondre

0

This is not a real world example though, is it? You are encoding it in one page, and decoding it in another, aren't you? In that case, you need to tell us which character set those pages use.

Pekka avait raison, mes jeux de caractères se sont mélangées, après avoir mis un en-tête global UTF8 charset, tout fonctionne bien.