par
liens_geeks » 10 déc. 2012, 16:10
Bonjour,
Pour un de mes projets, je parse une boite gmail en PHP et je lis les mails d'un expéditeur donné.
Le problème que je n'arrive pas à résoudre est que le corps du mail est en ASCII et que je n'arrive pas à l'encoder en UTF-8
J'ai essayé tout ça :
Code : Tout sélectionner
$message = imap_fetchbody($inbox,$email_number,1);
echo "<hr >1/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = imap_utf8($message);
echo "2/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = html_entity_decode($message,ENT_COMPAT, 'UTF-8');
echo "3/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = utf8_encode($message);
echo "4/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = iconv("ASCII", "UTF-8", $message);
echo "5/Message encodé en ".mb_detect_encoding($message)."<br />";
mb_internal_encoding("UTF-8");
$message = mb_decode_mimeheader($message);
echo "6/Message encodé en ".mb_detect_encoding($message)."<hr />";
=> Les 6 echo m'affichent 'Message encodé en ASCII'
Le corps de message qui s'affiche de la sorte dans mon navigateur :
=09=09=09=09Vos donn=C3=A9es demand=C3=A9es le 10/12/2012 =C3=A0=
14H34 sont d=C3=A9sormais disponibles. Vous pouvez les t=C3=A9l=C3=A9charg=
er en cliquant sur le lien de t=C3=A9l=C3=A9chargement ci-dessous.<br/><br/=
>=09=09=09=09=09<tr>
=09=09=09=09=09=09<td>T=C3=A9l=C3=A9chargement des donn=C3=A9es : </td><td>=
<a href=3D"
http://www.test.com/=
1524a8e11ac0a5099bb1236">
http://www.test.com/telecharge=
ment/7a0a534651524a8e11ac0a5099bb1236</a></td>
=09=09=09=09=09</tr>
=09=09=09=09=09<tr>
Auriez vous une piste de recherche?
Merci d'avance
Bonjour,
Pour un de mes projets, je parse une boite gmail en PHP et je lis les mails d'un expéditeur donné.
Le problème que je n'arrive pas à résoudre est que le corps du mail est en ASCII et que je n'arrive pas à l'encoder en UTF-8
J'ai essayé tout ça :
[code]
$message = imap_fetchbody($inbox,$email_number,1);
echo "<hr >1/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = imap_utf8($message);
echo "2/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = html_entity_decode($message,ENT_COMPAT, 'UTF-8');
echo "3/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = utf8_encode($message);
echo "4/Message encodé en ".mb_detect_encoding($message)."<br />";
$message = iconv("ASCII", "UTF-8", $message);
echo "5/Message encodé en ".mb_detect_encoding($message)."<br />";
mb_internal_encoding("UTF-8");
$message = mb_decode_mimeheader($message);
echo "6/Message encodé en ".mb_detect_encoding($message)."<hr />";[/code]
=> Les 6 echo m'affichent 'Message encodé en ASCII'
Le corps de message qui s'affiche de la sorte dans mon navigateur :
[quote]=09=09=09=09Vos donn=C3=A9es demand=C3=A9es le 10/12/2012 =C3=A0=
14H34 sont d=C3=A9sormais disponibles. Vous pouvez les t=C3=A9l=C3=A9charg=
er en cliquant sur le lien de t=C3=A9l=C3=A9chargement ci-dessous.<br/><br/=
>=09=09=09=09=09<tr>
=09=09=09=09=09=09<td>T=C3=A9l=C3=A9chargement des donn=C3=A9es : </td><td>=
<a href=3D"http://www.test.com/=
1524a8e11ac0a5099bb1236">http://www.test.com/telecharge=
ment/7a0a534651524a8e11ac0a5099bb1236</a></td>
=09=09=09=09=09</tr>
=09=09=09=09=09<tr>[/quote]
Auriez vous une piste de recherche?
Merci d'avance