PHP MimeMail mit eingebetteten Bildern versenden

In geschäftlichen Signaturen werden gerne Firmenlogos oder sogar das persönliche Foto mitversandt. Oft findet man das Bild dann im Anhang und nicht innerhalb des Textes, aber als weitaus wichtigere Anwendungsmöglichkeit, kann die MimeMail Klasse in einem Newsletter System eingebunden werden. Für die Bearbeitung steht dann ein Feld, für eine Textnachricht, und eines für eine HTML-Nachricht zur Verfügung. Als letztes werden alle nötigen Bilder entsprechend eingebettet. Dazu ist es abschließend noch möglich, wirkliche Anhänge der eMail anzufügen und dann an beliebig viele Empfänger zu versenden.

Folgende Vorteile bietet die PHP MimeMail Klasse:

  • Versenden einer textbasierten eMail
  • Versenden einer HTML-basierten eMail
  • Einbetten von Bildern
  • Weitere sonstige Anhänge
  • Alle diese Funktionen auch kombiniert
  • Kopfinformationen können manipuliert bzw. ergänzt werden
  • Priorität einer eMail setzen

Die wohl größten Vorteile bestehen darin, dass ein nicht HTML-fähiger MailClient nur die Textvariante anzeigt, dass in HTML-eMails alle Dateien eingebettet sind und nicht extern von einem evtl. blockierten Server nachgeladen werden müssen. Mit den gängigsten eMail-Programmen wurde das Script getestet, unter anderem Mozilla Thunderbird, Opera Mail, Microsoft Outlook, Microsoft Mail, KMail, Mac Mail.

Hier möchte ich Ihnen noch zeigen, wie einfach eine Implementierung ist. Bereits wenige Zeilen Quelltext reichen aus, um die Klasse zu verwenden:

  1. /* neue MimeMail erstellen */
  2. $mime = new MimeMail();
  3. /* Absender der eMail setzen */
  4. $mime -> setSender( "$name <$email>" );
  5. /* Empfänger der eMail setzen */
  6. $mime -> setRecipient( "$name <$email>" );
  7. /* Betreff setzen */
  8. $mime -> setSubject( $subject );
  9. /* Evtl. noch einen neuen Header hinzufügen */
  10. $mime -> addHeader( "Organization", "Pyades Technologies GmbH" );
  11. /* Priorität der eMail setzen */
  12. $mime -> setPriority( "3" );
  13. /* HTML-Bereich setzen */
  14. $mime -> setHtml( $html );
  15. /* eingebettete Dateien hinzufügen - durch die <img src="cid:file1@pyades.com"/> werden die korrekten Bilder zugewiesen - die IDs sind fortlaufend */
  16. $mime -> addEmbeddedAttachement( $file, $mimetype );
  17. /* Einfachen Textbereich setzen */
  18. $mime -> setPlain( $plain );
  19. /* weitere Attachments hinzufügen */
  20. $mime -> addAttachment( $file, $mimetype );
  21. /* Die eMail verschicken */
  22. $mime -> sendMimeMail();

Außerdem finden Sie eine genauere Beschreibung der Funktionen in der Datei.

Download: /examples/mimemail.zip (2 KB)

Bei Fragen zu einem Newslettersystem oder zu der beschriebenen Klasse freue ich mich über Ihren Anruf und natürlich auch Ihre eMail.

Florian Becker

Pyades Technologies GmbH
Römerstr. 4 L
55232 Alzey

Tel: +49 (0) 67 31.998 78 66
Mob: +49 (0) 163.680 35 64
Fax: +49 (0) 67 31.998 78 67

Webseite: www.pyades.com

Amtsgericht: Mainz HRB 41299
Geschäftsführer: Florian Becker

Schlagworte: , , , , , , , , , , , , , , , ,

Kommentieren

Sie müssen angemeldet sein, um kommentieren zu können.