Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menghantar E-mel dari Borang HTML Menggunakan PHP pada Halaman Yang Sama?

Bagaimana untuk Menghantar E-mel dari Borang HTML Menggunakan PHP pada Halaman Yang Sama?

Linda Hamilton
Linda Hamiltonasal
2024-12-18 17:13:14817semak imbas

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

Hantar E-mel dengan PHP daripada Borang HTML pada Hantar dengan Skrip Yang Sama

Skrip ini membolehkan anda menghantar e-mel daripada borang HTML menggunakan PHP tanpa beralih ke halaman atau skrip lain.

Kod Penjelasan:

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

Dalam kod ini, skrip mail_handler.php ialah sebahagian daripada borang HTML. Apabila borang diserahkan, data diproses oleh skrip yang sama dan e-mel dihantar menggunakan fungsi mel(). Ini memastikan pengguna berada di halaman yang sama dan memberikan pengalaman yang lancar.

Maklumat Tambahan:

  • Tindakan lalai borang adalah untuk MENYIArkan data kepada dirinya sendiri . Menentukan tindakan sebagai "" atau skrip PHP yang sama memastikan bahawa data diserahkan ke halaman yang sama untuk dikendalikan.
  • Gelung foreach dalam kod berulang pada tatasusunan $_POST dan membina badan mesej e-mel dengan menambahkan setiap nama medan dan nilainya yang sepadan.
  • Fungsi htmlspecialchars() menghalang serangan Cross-Site Scripting (XSS) oleh melarikan diri daripada aksara khas dalam input.

Atas ialah kandungan terperinci Bagaimana untuk Menghantar E-mel dari Borang HTML Menggunakan PHP pada Halaman Yang Sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn