Maison >développement back-end >tutoriel php >Comment envoyer des e-mails à partir d'un formulaire HTML en utilisant PHP sur la même page ?

Comment envoyer des e-mails à partir d'un formulaire HTML en utilisant PHP sur la même page ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-18 17:13:14833parcourir

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

Envoyer un e-mail avec PHP à partir d'un formulaire HTML lors de la soumission avec le même script

Ce script vous permet d'envoyer un e-mail à partir d'un formulaire HTML en utilisant PHP sans passer à une autre page ou à un autre script.

Code Explication :

<?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">

Dans ce code, le script mail_handler.php fait partie du formulaire HTML. Lorsque le formulaire est soumis, les données sont traitées par le même script et un e-mail est envoyé à l'aide de la fonction mail(). Cela maintient l'utilisateur sur la même longueur d'onde et offre une expérience transparente.

Informations supplémentaires :

  • L'action par défaut d'un formulaire consiste à POSTER des données sur lui-même. . Spécifier l'action comme "" ou le même script PHP garantit que les données sont soumises à la même page pour traitement.
  • La boucle foreach dans le code parcourt le tableau $_POST et construit le corps du message électronique. en ajoutant chaque nom de champ et sa valeur correspondante.
  • La fonction htmlspecialchars() empêche les attaques Cross-Site Scripting (XSS) en échappant aux caractères spéciaux dans le entrée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn