PHP联系表格发送电子邮件中没有内容
我需要帮助,我试图建立一个联系表格,我有代码,并认为我已经用HTML和PHP正确设置。当我提交在我的测试网站上进行测试时,它会发送一封电子邮件,但电子邮件是空白的。PHP联系表格发送电子邮件中没有内容
如果你能帮助我,请提前致谢。
HTML:
<div class="col-md-6 contact-right">
<form name="contactform" action="mailer.php" method="post" role="form" enctype="text/plain">
<div class="styled-input agile-styled-input-top">
<input type="text" class="form-control" name="name" placeholder="Your Name">
<label for="name">Name</label>
<span></span>
</div>
<div class="styled-input">
<input type="text" class="form-control" name="email" placeholder="Your Email">
<label for="email">Email</label>
<span></span>
</div>
<div class="styled-input">
<input type="text" class="form-control" name="subject" placeholder="Subject">
<label for="subject">Subject</label>
<span></span>
</div>
<div class="styled-input">
<textarea class="form-control" rows="4" name="message" placeholder="Your message..."></textarea>
<label for="message">Message</label>
<span></span>
</div>
<input type="submit" value="Submit" name="submit">
</form>
</div>
<div class="clearfix"> </div>
</div>
</div>
</div>
PHP:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "[email protected]";
$subject = "Enquiry from CK9C Website";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You! We will be in touch very soon";
?>
你可以尝试代替$ _ POST
if ((!is_array($_POST)) || (count($_POST) < 1)) {
$_POST = json_decode(file_get_contents('php://input'), true);
}
在这个问题的任何地方都没有JSON。检查POST值,然后使用'php:// input',是没有意义的。 –
的问题是在这里: <form name="contactform" action="mailer.php" method="post" role="form" enctype="text/plain">
您编码为 “text/plain的”。替换为默认的“application/x-www-form-urlencoded”,或者不包含enctype,这将是默认设置。
非常感谢你,它现在正常工作!你太棒了! –
你能确认邮件在表单提交中不是空白吗?即'var_dump($ _ POST)'中的值是什么?从你的屏幕截图看来,'$ name'和'$ message'的值是空的。 – faintsignal
我在消息中添加了几行文字 –