如何在提交 php 表单时向用户发送电子邮件


How do I send an email to the user on submit of php form

我如何向用户发送电子邮件,其中包含他们在表单中提交的数据,其中包括一条使用名称的小消息,并在提交 php 表单时感谢他们。

这是我当前的 php 代码。它目前只是向他们显示一条消息,上面写着名称并且消息已发送,然后向我的电子邮件地址发送了一封电子邮件。

<?php
    if(isset($_POST['submit'])){
        $to = "benlevygraphics@gmail.com";
        $headers = "From: " . $_POST['email'];
        $subject = "Ben, you have been contacted...";
        $body = "Name: " . $_POST['name'] . "'nEmail: " . $_POST['email'] . "'nWebsite: " . $_POST['web'] . "'nMessage: " . $_POST['message'];
        if(mail($to, $subject, $body, $headers)){
        echo("<p class=contactformsent>".$_POST['name'].", your message has been sent!</p>");
        }
        else{
           echo("<p class=contactformnotsent>".$_POST['name'].", Message delivery failed...</p>");
        }
   }
?>

我是 php 的新手,我在网上阅读过东西,但我仍然不明白,所以如果你能清楚地了解你的例子或帮助,我将不胜感激。谢谢!

假设您当前的代码已经正常工作,您可以这样做与收件人一起向自己发送电子邮件:

  1. $to设置为$_POST['email']
  2. $headers设置为"From: {$_POST['email']}'r'nBcc: benlevygraphics@gmail.com"
  3. 根据您的需求调整$body$subject

顺便说一句,我不能经常这样说;确保你的页面有某种形式的CSRF保护。

如何使用 PHP 正确添加 CSRF 令牌

以上只是一种方式,还有其他方式,只需搜索:)

查看你的php.ini因为你必须输入一个SMTP服务器。在我的文件中,它以"[邮件功能]"开头的第 1087 行