PHP邮件功能发送空白电子邮件

时间:2019-11-27 01:40:09

标签: php html email

我有一个HTML表单,可发布到PHP邮件功能。由于某种原因,它不再发送内容。电子邮件显示“此电子邮件没有内容”。我想念什么吗?

//HTML - Post method form. 

<form class="form" id="form" action="submitform.php" method="post">
<h2 style="padding-top: 10px;">Contact Us</h2>
<input class="input" type="text" placeholder="Name" name="name"><br>
<input class="input" type="text" placeholder="E-Mail Address" name="email"><br>
<input class="input" type="text" placeholder="Phone #" name="phone"><br>
<textarea class="input" placeholder="Questions, Specifications, etc." 
name="message</textarea>
<input class="inputButton" type="submit">
</form> 

//PHP - Gets posted HTML input data and sends it to the email, formatted with \n 

<?php 
$to = 'example@example.com' ;
$subject = 'Inquiry' ; 
$name = $_POST['name'] ; 
$email = $_POST['email'] ;
$phone = $_POST['phone'] ;
$message = $_POST['message'] ;

$message = "From: $name  \nEmail: $email \nPhone: $phone \nMessage: $message \n";

$sent = mail ($to, $subject, $message) ; 
if($sent == true) {
echo "<h3>Thank you for your inquiry.</h3>"; 
}else{
echo "<h3>Sorry, your message wasn't sent.</h3>; 
}
?>

1 个答案:

答案 0 :(得分:1)

即使我只想要默认值,我也发现定义标头可以帮助我发送邮件。我不能说这是您需要做的,因为您的代码看起来应该可以按原样成功运行。

将标头设置为(我相信)默认值的示例:

    $to = $to_email;
    $subject = $your_subject;
    $message = $your_message;
    $headers = "From: S.O.<no-reply@dontusethis.email>\r\n" . 
               "Reply-To: [can be nice, not needed of course]\r\n" .
               "X-Mailer: PHP/" . phpversion();
    $headers .= 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";        
    mail($to,$subject,$message,$headers);