PHP - HTML-Mails mit dem PHPMailer versenden

In diesem Beispiel werden sämtliche CSS-Angaben direkt in den Body geschrieben, es ist also nur Inline-CSS möglich. Um die Hintergrundfarbe zu ändern muss der Inhalt in eine Tabelle gesteckt werden (so wie dies vor 15 Jahren üblich gewesen war).

Der Inhalt sollte keine HTML oder CSS Experimente enthalten, denn man weiß nicht mit welchem Programm der Empfänger die E-Mail anschaut.


<?php

// HTML-Mails mit dem PHPMailer (Version: 6.2) versenden

// PHPMailer einbinden
use PHPMailer\PHPMailer\PHPMailer;
use 
PHPMailer\PHPMailer\Exception;

require 
"PHPMailer-master/src/Exception.php";
require 
"PHPMailer-master/src/PHPMailer.php";

$html '<!DOCTYPE html>
<html lang="de">
 <head>
  <meta charset="UTF-8">
  <title>Weit hinten, hinter den Wortbergen</title>
 </head>
<body>

<table style="background-color: #D2FFD2; width: 100%; padding: 10px;">
<tr>
 <td>
  <h2 style="color: #00A600;">Weit hinten, hinter den Wortbergen</h2>
  <p>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte.</p>
  <p>Abgeschieden wohnen Sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans.</p>
 </td>
</tr>
<tr>
 <th>
  <img src="cid:TBP" alt="Wortbergen">
 </th>
</tr>
</table>

</body>
</html>';

$mail = new PHPMailer();
$mail->CharSet "UTF-8";
$mail->setFrom("john@example.com""John Doe");
$mail->addAddress("jane@example.com""Jane Doe");
$mail->Subject "Subject";

$mail->isHtml(true);
$mail->AddEmbeddedImage('top.jpg''TBP''top.jpg');
$mail->Body $html;
//$mail->AltBody = "";

if ($mail->Send()) {
 echo 
'OK';
}
else {
 echo 
'Error!' $mail->ErrorInfo;
}
?>

Bausteine  Alle Anzeigen

Eine zufällige Auswahl von Codeschnipseln aus den Bereichen HTML, CSS, PHP, JavaScript und MySQL.

<a> Verweis

CSS - Wasserzeicheneffekt - Hintergrundbild fixieren

PHP - Letzten Seperator einer URL entfernen

JavaScript - Objekt eine JavaScript-Funktion zuweisen

MySQL - Datensätze (Gehalt) zwischen 2000 und 3000 anzeigen