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 versenden

$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>'
;

require_once 
"PHPMailer-master/PHPMailerAutoload.php";
$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

Eine zufällige Auswahl von „Bausteinen” aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Abschnitt festsetzen

PHP - Zahl erweitern

JavaScript - Beim Anklicken einer Checkbox den dazugehörenden Text hervorheben

MySQL - Doppelte Einträge in der Tabelle finden