Heim >Backend-Entwicklung >PHP-Tutorial >Wie sende ich E-Mails aus einem HTML-Formular mit PHP auf derselben Seite?

Wie sende ich E-Mails aus einem HTML-Formular mit PHP auf derselben Seite?

Linda Hamilton
Linda HamiltonOriginal
2024-12-18 17:13:14817Durchsuche

How to Send Emails from an HTML Form Using PHP on the Same Page?

E-Mail mit PHP aus HTML-Formular senden beim Senden mit demselben Skript

Mit diesem Skript können Sie eine E-Mail aus einem HTML-Formular senden mit PHP, ohne zu einer anderen Seite oder einem anderen Skript zu wechseln.

Code Erläuterung:

<?php
if (isset($_POST['submit'])) {
    $to = $_POST['email'];
    $from = "[email&#160;protected]";
    $headers = "From:" . $from;

    $message = "This is a message from an HTML form.\n\n";
    foreach ($_POST as $field => $value) {
        $message .= ucfirst($field) . ": " . $value . "\n";
    }

    if (mail($to, "Message from HTML Form", $message, $headers)) {
        echo "Mail Sent.";
    } else {
        echo "Failed to send mail.";
    }
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>HTML Form</title>
</head>
<body>

<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post">
    <label for="name">Name:</label>
    <input type="text">

In diesem Code ist das Skript mail_handler.php Teil des HTML-Formulars. Beim Absenden des Formulars werden die Daten vom selben Skript verarbeitet und eine E-Mail mit der Funktion mail() versendet. Dadurch bleibt der Benutzer auf dem gleichen Stand und sorgt für ein nahtloses Erlebnis.

Zusätzliche Informationen:

  • Die Standardaktion eines Formulars besteht darin, Daten an sich selbst zu senden . Durch Angabe der Aktion als „“ oder durch dasselbe PHP-Skript wird sichergestellt, dass die Daten zur Verarbeitung an dieselbe Seite übermittelt werden.
  • Die foreach-Schleife im Code iteriert über das $_POST-Array und erstellt den Text der E-Mail-Nachricht indem Sie jeden Feldnamen und seinen entsprechenden Wert anhängen.
  • Die Funktion htmlspecialchars() verhindert Cross-Site-Scripting-Angriffe (XSS), indem sie Sonderzeichen in der Datei maskiert Eingabe.

Das obige ist der detaillierte Inhalt vonWie sende ich E-Mails aus einem HTML-Formular mit PHP auf derselben Seite?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn