Nachdem ich im weltweiten Netz vorhin endlich einen Beitrag zu einem Problem gefunden habe, mit dem ich mich schon länger herumschlage, erlaube ich mir, die Lösung hier auch nochmal zu posten. Vielleicht hilft's ja noch jemandem .
Ausgangsproblem: Beim Versand von HTML-E-Mails mit PHP trat immer wieder mal das Problem auf, dass in der ankommenden E-Mail scheinbar willkürlich die Zeichenfolge '! ' (Ausrufezeichen + Leerzeichen) eingefügt war. Im originalen Quelltext tauchte diese Zeichenfolge natürlich nicht auf, sie muss also während des Versandes eingefügt worden sein. Besonders problematisch war es, wenn die Zeichenfolge innerhalb eines Links eingefügt wurde, der dann natürlich nicht mehr funktionierte.
Ursache: Das Problem liegt wohl darin, dass HTML-Code, der in einer einzigen Zeile steht (also keine Zeilenumbrüche enthält), beim Versand "zerstückelt" wird und dabei dann die ominöse Zeichenfolge auftaucht.
Lösung: Zeilenumbrüche einfügen (ich habe das automatisiert, indem ich nach jedem '>' einen Zeilenumbruch einfüge).
Falls jemand etwas zum Hintergrund beitragen kann (gibt es eventuell irgendeinen RFC, der das beschreibt?), immer raus damit . Eventuell ist die Zeichenfolge auch völlig korrekt dort, und der Client müsste sie beim Anzeigen nur wieder zurück umsetzen.
Und hier noch die Links zum urspünglichen Problemlöser: http://www.html.de/html-und-xhtml/14007-html-e-mail-fehlerhaft.html#post120859, http://www.selfphp.de/forum/showthread.php?t=17392 - Ehre, wem Ehre gebühret .
Hallo,
Danke für die Info, eventuell grabe ich da nochmal weiter.
Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)