$imap = imap_open('{'.$boiteMail.':'.$port.'/imap/ssl}', $login, $motDePasse);
$mails = FALSE;
    if (FALSE === $imap) {
        $err = 'La connexion a échoué. Vérifiez vos paramètres!';
    } else {
        $info = imap_check($imap);
        if (FALSE !== $info) {
            $nbMessages = min(50, $info->Nmsgs);
            $mails = imap_fetch_overview($imap, '1:'.$nbMessages, 0);
        } else {
            $err = 'Impossible de lire le contenu de la boite mail';
        }
    }

if (FALSE === $mails) {
    echo $err;
} else {
    echo 'La boite aux lettres contient '.$info->Nmsgs.' message(s) dont '.
    $info->Recent.' recent(s)'.
    "<br />\n".
    "<br />\n";
    foreach ($mails as $mail) {
        $message = imap_fetchbody($imap,2,1.2); //////////////////// PROBLEME
        echo $message;
        echo $mail->from.' '.$mail->subject.' '.$mail->date."<br />\n";
    }
}
imap_close($imap);
?>

Mon problème est que la fonction imap_fetchbody ne retourne absolument rien, alors qu'il existe bien un mail n°2 dont le corps est plein ! Quelqu'un à une solution ?

1 réponse


Mikachu
Réponse acceptée

BOn prob résolu on dirait en mettant 2 a la place de 1.2 :)
Tiens le lien qui ma aidé a t aider :
http://php.net/manual/fr/function.imap-fetchbody.php

cette partie la:

(empty) - Entire message
0 - Message header
1 - MULTIPART/ALTERNATIVE
1.1 - TEXT/PLAIN
1.2 - TEXT/HTML
2 - MESSAGE/RFC822 (entire attached message)
2.0 - Attached message header
2.1 - TEXT/PLAIN
2.2 - TEXT/HTML
2.3 - file.ext