php - 基本的 PHP 联系表单接收电子邮件但没有消息

标签 php html forms

我正在使用在线找到的指南来创建我的第一个 PHP 联系表单。一切正常,除了消息字段为空白外,已收到电子邮件,所有其他部分都很好。我仔细查看了一下,发现有数百个类似的问题已发布,但我找不到任何适合我的答案,如果答案已经存在,我深表歉意,非常感谢所有帮助。

HTML:

    <div class="contactform">
    <h1>YOUR NAME</h1>
        <form class="commentform" action="message.php" method="post">
            <input type="text" name="name" class="nametext">
            <br />
    <h1>YOUR EMAIL</h1>
            <input type="email" name="email" class="emailtext">
            <br />  
    <h1>YOUR MESSAGE</h1>
            <textarea placeholder="Don't hold back..." name="message" form="commentform" class="textbox"></textarea>
            <br />
            <input type="submit" name="submit" value="LET'S TALK" class="submit">
        </form>
</div>  

PHP:

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "someone@mailup.net";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!";

?>

最佳答案

从消息 textarea 中删除 form="commentform" 属性...

<textarea placeholder="Don't hold back..." name="message" class="textbox"></textarea>

这不是必需的,因为 textareaform 标签的子标签。

在这种情况下,它实际上是在阻止您接收值,因为您的 form 标签没有 id="commentform",所以您告诉浏览器您的 textarea 属于一个不存在的表单。

关于php - 基本的 PHP 联系表单接收电子邮件但没有消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40208281/

相关文章:

php - 使用 mysql/php 进行严格搜索

javascript - 验证数字和特殊字符 '_'

php - PHP 中数字值和字符串值的区别

php - 我如何查询随机行并跟踪已查询的内容(这是重要的部分)

html - CSS 图像和 Div 不会保持内联

javascript - 如何更改此 JavaScript 代码的字体颜色?

html - 使CSS代码更清晰(删除重复行)

php - 如何在表单提交时将带有 <option> 的表单元素 <select> 中的数据提取到 php 中?

javascript - 如何将用户选择的酒店房间乘以入住天数?

html - CSS 垂直对齐 : baseline with tables, 表单和 div