【问题标题】:How to use php mail() function如何使用 php mail() 函数
【发布时间】:2021-04-24 20:02:49
【问题描述】:

我知道这段代码会在本地主机上出错,而​​不能在实时服务器上运行。

如您所见,我正在尝试为邮件功能运行此代码。此功能在我的其他站点上运行,但在此站点上工作。知道此代码将在本地主机上给出错误但不显示错误。表格可能有些问题。我不知道究竟是什么错误,请告诉我问题。

function send-message()
{
      if(ISSET($_POST['submit'])) {
        $to        = "abc@example.com";
        $FROM_NAME= $_POST['name'];
        $cell = $_POST['cell'];
        $email     = $_POST['email'];
        $subject   = $_POST['subject'];
        $message   = $_POST['message'];
    
        $headers = "From:{$FROM_NAME} {$email} {$cell}";
        $result = mail($to, $subject, $message, $headers);
        if (!$result) {
          echo "error";
        }
        else{
          echo "sent";
        }
      }
  }

这是一个表格,请解决错误

<form method="post" id="contact-form" action="">
   <?PHP send-message(); ?> // function call here
   <div class="input-box mt-25">
       <label for="#">Full Name Here</label>
       <input type="text" name="name" placeholder=" Enter Name Here" required="">
       <i class="FAL FA-user"></i> //please ignore capital letter
    </div>
   <div class="input-box mt-25">
       <label for="#">Phone Number</label>
       <input type="text" placeholder="Enter your phone number *" name="cell" required="" max length="11" min length="11">
        <i class="FAS FA-phone-square"></i>
   </div>
   <div class="input-box mt-25">
       <label for="#">I Would Like To Discuss</label>
       <input type="email" name="email" placeholder="Enter your email" required="">
         <i class="far FA-envelope"></i>
   </div>
     <div class="input-box mt-25">
       <label for="#">Subject</label>
       <input name="subject" type="text" placeholder="Subject *" required="">
       <i class="FAS FA-book"></i>
   </div>
   <div class="input-box mt-25">
       <label for="#">Leave A Message</label>
       <text area name="message" id="#" cols="30" rows="10" placeholder="Write Message"></text area>
       <i class="FAL FA-pen-alt"></i>
   </div>
   <div class="submit-BTN text-left mt-20">
       <button type="submit" name="submit" class="main-BTN">Send Message</button>
   </div>

【问题讨论】:

    标签: php html css bootstrap-5


    【解决方案1】:

    您的代码中有多个错误。

    send-message 似乎不是一个有效的函数名。

    另一个问题是关于headers 部分,检查official php.net/mail documentation 以了解如何正确使用mail 函数,以及如何编写正确的标题,以及何时换行。

    可能还有更多错误,建议你在开发时启用display_errorserror_reporting(再次,如果你不知道如何启用它,请查看官方文档:))

    【讨论】:

    • 我将函数命名为“send_message”。我使用了发送消息功能,因为他们不接受该名称。在代码中我使用该名称。
    • 我已经提到这总是在本地主机上给出错误,但它正在给出 .我读了文件,就像我的代码一样。在他们提到的文档中,您可以在附加标头中使用数组或变量。如果您可以更正此代码,请将正确的代码发送给我。
    • 潜在错误太多了,这就是为什么我告诉你使用显示错误功能,它会给你错误消息来帮助你修复代码。另外,请记住,如果您没有正确配置本地计算机,您可能无法从本地发送电子邮件。关于标题,缺少换行符
    • 你能更正这段代码吗?并评论你到底在说什么。我在 localhost 上使用了错误报告功能,但它没有给出任何警告
    • 您没有得到我的问题先生。我之前在我的 2 个网站中使用过相同的代码,它工作正常。像这段代码在 localhost 上给出错误并且在托管它意味着代码是正确的。但问题是,如果您有任何正确的代码可以在您的计算机上运行,​​为什么相同的代码不能在本网站上运行,请提供给我,或者您更正此代码并发送到我的。
    猜你喜欢
    • 2013-07-15
    • 2012-10-23
    • 1970-01-01
    • 2015-06-26
    • 2022-01-23
    • 2015-08-03
    • 1970-01-01
    • 2017-08-07
    • 2012-07-21
    相关资源
    最近更新 更多