PHP: imap HTML Mails anzeigen

bomberpilotmp3

Erfahrenes Mitglied
Hallo,

ich habe eine Frage zu Imap. Ich lesen mittels PHP mein E-Mail Postfach aus. Funktioniert wunderbar. Aber wenn zb eine HTML E-Mail ankommt, oder eine E-Mail mit Anhang, wird die E-Mail komplett durcheinader angezeigt.

Hier mein bisheriger Code:

PHP:
if (empty($_GET['_message_id'])) {
        die ('Bitte geben Sie eine MessageID an!');
    } elseif (!is_numeric($_GET['_message_id'])) {
        die ('Die MessageID darf nur aus Zahlen bestehen!');
    } else {
        function umlaute($_string) {
            $_string = imap_8bit($_string);
            $_umlaute = array('=3DE4' => 'ä',
                              '=3DC4' => 'Ä',
                              '=3DFC' => 'ü',
                              '=3DDC' => 'Ü',
                              '=3DF6' => 'oe',
                              '=3DF6' => 'ö',
                              '=3DD6' => 'Ö',
                              '=3DDF' => 'ß',
                               '3D'   => NULL,
                              '=3D20' => NULL,
                              '=3D'   => NULL,
                              '=A0' => NULL,
                              '=09' => chr(0x20),
                        );

            foreach ($_umlaute as $_code => $_ustring) {
                $_string = str_replace($_code, $_ustring, $_string);
            }
          return ($_string);
        } 

        $_imapBody = @imap_body($_imapOpen, $_GET['_message_id']) or die ('Diese MessageID existiert leider nicht!');
        $_imapStruction = imap_fetchstructure($_imapOpen, $_GET['_message_id']);
        $_imapBody = imap_body($_imapOpen, $_GET['_message_id']);
        $_imapBody = ___decodeBody($_imapBody, $_imapStruction->type, $_imapOpen);

        echo umlaute($_imapBody);
    }

Nun ist die Frage, wie ich es aschaffe, das auch HTML Mails anzegeigt werden und Mails, die einen Anhang besitzen. Im Prinzip möchte ich nur den reinen Text oder HTML Text richtig angezeigt bekommen. Wie realisiere ich das, oder hat jemand eine Lösung für mich?
 
Zuletzt bearbeitet:
Vielen Dank, aber ich seh da nix, kann mich nicht reggi weil keine Mail kommt, und englisch ist nur ein grundbegriff für mich. dh. Schulenglisch.
 
Zurück