Der Martin: IMAP: Zu Mails mit Content-Type "related"

Beitrag lesen

Hallo,

ich rufe Mails mit PHP-IMAP ab, analysiere sie und schicke sie ggf. weiter (per PEAR Mime_mail).

wenn du sie weiterleitest - warum dann nicht in ihrer ursprünglichen Form? Mir scheint, du machst dir erst die Mühe, die Mailstruktur aufzudröseln (für die Analyse okay) und danach neu aufzubauen.

Aber beim Mailbody hänge ich: Ich hätte für den Text den Subtype HTML erwartet

Ich nicht. Ich hätte multipart/alternative erwartet, und darin text/plain als erste Alternative, und multipart/related als zweite Alternative; darin wiederum text/html als ersten Block, und image/* als weitere Blöcke.
Schließlich soll eine HTML-Mailnachricht ihren Inhalt ja immer alternativ als Plaintext mitbringen.

Kann es sein, dass PHP-IMAP diese Mails falsch parst (und nur den Alternativ-Textinhalt anzeigt) oder habe ich da irgendwo einen Denkfehler?

Kann ich anhand deiner Angaben nicht sagen. Du zeigst uns weder den Quelltext der Mailnachricht, noch Auszüge aus deinem PHP-Code.

Bei einer Testmail sagt mir "imap_fetchstructure" es gäbe nur Part 0 und Part 1.

So würde ich es erwarten - nämlich text/plain und multipart/related.

Part 0 (bzw. in der Zählweise mit Header Part 1) ist laut "imap_fetchbody" der Text als Plaintext ohne Hinweis auf die Stelle des Bildes und ohne HTML-Formatierungen

Richtig.

und Part 1 (bzw. 2) ist das Bild.

Das sollte nicht sein. Part 1 (bzw. Part 2 nach IMAP-Numerierung, siehe Beispiel in der Spec) sollte der multipart/related-Container sein, Part 2.1 dann text/html, und erst 2.2 bis 2.n sollten die eingebundenen Bilder sein.

Versuche Part 3, 1.1 oder ähnliches anzusteuern geben nichts zurück.

Wenn die Message so aufgebaut ist, wie ich erwarten würde, gibt es auch weder Part 3, noch Part 1.1.

Ich würde mich sehr freuen, wenn mir da jemand weiterhelfen könnte.

Dazu solltest du zunächst mal die tatsächliche (nicht interpretierte) Struktur der untersuchten Message zeigen.

So long,
 Martin

--
Paradox ist, wenn der Innenminister sich äußert und der Außenminister sich erinnert.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(