hi,
ich arbeite gerade an einem Projekt, in dem Administratoren Emails mit und ohne Anhängen versenden können. Soweit so gut, nur habe ich das Problem, dass zumindest in Thunderbird ausschließlich der Anhang anzeigt wird bzw. der Text wird verschluckt. Bei E-Mails ohne Anhang ist das leere E-Mail natürlich besonders "g'schmackig". Ich habe den Quellcode mit dem einer von Thunderbird selbst generierten (richtig dargestellten) Nachricht mit Anhang verglichen und mir ist kein Unterschied aufgefallen. NASA, hier ist der Code:
[START]
Return-Path: xyz-office@xyz-design.at
X-Sieve: CMU Sieve 2.3
To: Newsletter:;
Subject: Design-Newsletter für Profidesigner
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=5caa52eb6bad56b23732bcf57339321b
From: XYZ@design xyz-office@xyz-design.at
Date: Tue, 26 Oct 2010 19:36:37 +0200
This is a multi-part message in MIME format.
--5caa52eb6bad56b23732bcf57339321b
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Bitte beantworten Sie diese E-Mail nicht, sondern setzten Sie sich bitte mit dem Autor in Verbindung: John James john.james@xyz-design.at
--5caa52eb6bad56b23732bcf57339321b
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Text
--5caa52eb6bad56b23732bcf57339321b
Content-Type: image/jpeg; name="Beispiel-Fadentechnik.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="Hintergrund2-Vorlage.jpg"
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
sr/wsr/wsBf62f8AUZ/xGNM/os//2Q==
--5caa52eb6bad56b23732bcf57339321b--
[ENDE]
Nun meine zwei Fragen:
1. Wie kann ich auch den Text anzeigen lassen, ohne dabei auf den Anhang zu verzichten?
2. Die Angabe des MIME-Typs der hoch geladenen Datei stammt ja vom Client. Trotzdem verzichten viele Beispiele auf Überprüfung, ob keine Injektionen eingebaut sind. Warum? Und falls ich doch eine Überprüfung verwenden sollte: Gibt es hierfür einen guten vorgefertigten RegEx/eine Funktion oder muss ich mir selbst einen passenden RegEx zur Überprüfung zurecht zimmern?
3. Verkraften eh alle E-Mail-Programme mehrere text/plain-Abschnitte oder sollte ich die zusammenlegen und eben mit irgendetwas anderem trennen. (Nein, auch mit 2 Abschnitten funktioniert das generierte Mail nicht ;-) )
Vielen Dank für alle Hinweise!
lg Hameeelh.