PHP E-Mail senden


PHP ermöglicht es Ihnen, E-Mails direkt aus einem Skript zu senden.


PHP-Funktion mail()

Die PHP-Funktion mail() wird verwendet, um E-Mails aus einem Skript zu senden.

Syntax

mail(to,subject,message,headers,parameters)

Parameter Beschreibung
auf Erforderlich. Gibt den E-Mail-Empfänger an.
subject Erforderlich. Gibt den Betreff der E-Mail an.Hinweis:Dieser Parameter darf keine Zeilenumbruchzeichen enthalten.
message Erforderlich. Definiert die zu sendende Nachricht. Verwenden Sie LF (\n), um Zeilen zu trennen. Jede Zeile sollte auf 70 Zeichen beschränkt sein.
headers Optional. Gibt zusätzliche Header an, wie z. B. From, Cc und Bcc. Zusätzliche Header sollten mit CRLF (\r\n) getrennt werden.
parameters Optional. Gibt zusätzliche Parameter für das Mail-Sendeprogramm an.

Hinweis:PHP erfordert ein installiertes und funktionierendes Mailsystem (wie sendmail, postfix, qmail usw.), um die Mailfunktionen auszuführen. Das verwendete Programm wird durch Konfigurationseinstellungen in der Datei php.ini festgelegt. Bitte besuchen Sie unserPHP-Mail-Referenzhandbuchum mehr zu lesen.


PHP Einfache E-Mail

Der einfachste Weg, eine E-Mail mit PHP zu senden, ist, eine E-Mail als reinen Text zu senden.

Im folgenden Beispiel deklarieren wir zuerst Variablen ($to, $subject, $message, $from, $headers) und verwenden dann diese Variablen in der mail()-Funktion, um eine E-Mail zu senden:

<?php
$to = "[email protected]";         // 邮件接收者
$subject = "参数邮件";                // 邮件标题
$message = "Hello! 这是邮件的内容。";  // 邮件正文
$from = "[email protected]";   // 邮件发送者
$headers = "From:" . $from;         // 头部信息设置
mail($to,$subject,$message,$headers);
echo "邮件已发送";
?>


PHP Mail-Formular

Mit PHP können Sie ein Feedback-Formular auf Ihrer eigenen Website erstellen. Das folgende Beispiel sendet eine Textnachricht an eine angegebene E-Mail-Adresse:

<html>
<head>
<meta charset="utf-8">
<title>Example(example.com)</title>
</head>
<body>

<?php
if (isset($_REQUEST['email'])) { // 如果接收到邮箱参数则发送邮件
    // 发送邮件
    $email = $_REQUEST['email'] ;
    $subject = $_REQUEST['subject'] ;
    $message = $_REQUEST['message'] ;
    mail("[email protected]", $subject,
    $message, "From:" . $email);
    echo "邮件发送成功";
} else { // 如果没有邮箱参数则显示表单
    echo "<form method='post' action='mailform.php'>
    Email: <input name='email' type='text'><br>
    Subject: <input name='subject' type='text'><br>
    Message:<br>
    <textarea name='message' rows='15' cols='40'>
    </textarea><br>
    <input type='submit'>
    </form>";
}
?>

</body>
</html>

Beispielerklärung:
  • Prüfen Sie zuerst, ob das E-Mail-Eingabefeld ausgefüllt wurde
  • Wenn es nicht ausgefüllt wurde (zum Beispiel, wenn die Seite zum ersten Mal aufgerufen wird), geben Sie ein HTML-Formular aus
  • Wenn es ausgefüllt wurde (nachdem das Formular ausgefüllt wurde), senden Sie eine E-Mail aus dem Formular
  • Nach dem Ausfüllen des Formulars und Anklicken der Absenden-Schaltfläche wird die Seite neu geladen, und Sie können sehen, dass die E-Mail-Eingabe zurückgesetzt wurde und eine Meldung angezeigt wird, dass die E-Mail erfolgreich gesendet wurde

Hinweis:Dieses einfache E-Mail-Senden ist nicht sicher. Im nächsten Kapitel dieses Tutorials werden Sie mehr über Sicherheitsprobleme in E-Mail-Skripten lesen, und wir werden erklären, wie Sie Benutzereingaben validieren, um sie sicherer zu machen.


PHP-Mail-Referenzhandbuch

Um weitere Informationen über die PHP-Funktion mail() anzuzeigen, besuchen Sie bitte unserPHP-Mail-Referenzhandbuch。

Andere Erweiterungen