UNGETESTET
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
$kundeMail = $kdn = $name = $id = $bemerkung = $message = "";
if (isset($_POST['kdn']))
{
$kundeMail = htmlspecialchars($_POST["kundeMail"], ENT_QUOTES, "UTF-8");
$kdn = htmlspecialchars($_POST["kdn"], ENT_QUOTES, "UTF-8");
$name = htmlspecialchars($_POST["name"], ENT_QUOTES, "UTF-8");
$id = htmlspecialchars($_POST["id"], ENT_QUOTES, "UTF-8");
$bemerkung = htmlspecialchars($_POST["bemerkung"], ENT_QUOTES, "UTF-8");
$html = include("mailbody.php");
require './PHPMailer/src/Exception.php';
require './PHPMailer/src/PHPMailer.php';
require './PHPMailer/src/SMTP.php';
$mail = new phpmailer();
$mail->Host = "smtp.server.de";
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'tls';
$mail->Port = 25;
$mail->Mailer = "smtp";
$mail->IsHTML(true);
$mail->IsSMTP(true);
$mail->From = "absender@domain.de";
$mail->FromName = "Mein Name";
$mail->SetFrom("absender@domain.de", "Mein Name");
$mail->Username = "SMTP-Benutzername";
$mail->Password = "SMTP-Passwort";
$mail->Subject = "Betreff";
$mail->AddAddress("empfaenger@domain.de");
$mail->msgHTML($html);
$mail->SMTPOptions = array('ssl' => array('verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
if (!$mail->send())
$message = "Mailer Error: " . $mail->ErrorInfo;
else
{
$message = "Erfolgreich gesendet!";
$kundeMail = $kdn = $name = $id = $bemerkung = "";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
if (strlen($message))
{
echo "<span style='color:#ff0000; font-weight:bold; font-size:14px;'>$message</span><br><br>";
}
?>
<form action="" method="post">
<label for="kdn">*Kundennummer</label>
<input type="text" maxlength="5" name="kdn" id="kdn" value="<?php echo $kdn; ?>" required>
<br>
<label for="kundeMail">*Kunden E-Mail</label>
<input type="email" name="kundeMail" id="kundeMail" value="<?php echo $kundeMail; ?>" required>
<br>
<label for="name">Name</label>
<input type="text" name="name" id="name" value="<?php echo $name; ?>">
<br>
<label for="id">*ID</label>
<input type="text" name="id" id="id" value="<?php echo $id; ?>" required>
<br>
<label for="bemerkung">Bemerkung</label>
<input type="text" name="bemerkung" id="bemerkung" value="<?php echo $bemerkung; ?>">
<br>
<button type="submit" class="btn btn-primary">Eintragen</button>
</form>
</body>
</html>
Alles anzeigen
mailbody.php
$html = "<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
</head>
<body>
<h1>Neues Backup verfügbar</h1>
<p>Sehr geehrte Damen und Herren,<br><br>
im Kundenportal wurde für Sie ein neues Backup Ihrer Webseite und der zugehörigen Datenbank hinterlegt.</p>
<br>
<h2>Details zum Backup</h2>
<table>
<tr>
<td><b>Datum:</b></td>
<td>" . date("d.m.Y H:i") . "</td>
</tr>
<tr>
<td><b>Name:</b></td>
<td>$name</td>
</tr>
<tr>
<td><b>ID:</b></td>
<td>$id</td>
</tr>
<tr>
<td><b>Bemerkung:</b></td>
<td>$bemerkung</td>
</tr>
</table>
</body>
</html>";
Alles anzeigen
Dieses Script erhebt nicht den Anspruch auf Perfektion, verdeutlicht aber, dass das Senden von Mails mit dem phpMailer kein großer Akt ist.
Die Zugangsdaten zum SMTP-Server, Port, Verschlüsselung müssen je nach Server angepasst werden