Php text提交时未发送区域

Php text提交时未发送区域,php,forms,textarea,submit,Php,Forms,Textarea,Submit,阿格,这太烦人了 我有一张带文本区的表格。在提交时,我使用一段php将表单数据发送到我的电子邮件地址。其他数据发送良好(输入),但它不发送文本区域 这是de PHP: parse_str($_POST['stuff']); mail("name@myemailadress.nl", "Website formulier", $name, $email, $comments); 代码如下: <form class="form" id="form" action="" method="POS

阿格,这太烦人了

我有一张带文本区的表格。在提交时,我使用一段php将表单数据发送到我的电子邮件地址。其他数据发送良好(输入),但它不发送文本区域

这是de PHP:

parse_str($_POST['stuff']);
mail("name@myemailadress.nl", "Website formulier", $name, $email, $comments);
代码如下:

<form class="form" id="form" action="" method="POST" >
    <p class="name">
        <input type="text" name="name" id="name" placeholder="NAAM" >
    </p>
    <p class="email">
        <input type="text" name="email" id="email" placeholder="E-MAILADRES" >
    </p>    
    <p class="text">
        <textarea name="comments" id="bericht" placeholder="BERICHT" ></textarea>
    </p>
    <p class="submit">
        <input type="submit" id="versturen_knop" class="submitBtn" value="VERSTUREN" >
    </p>
</form>
我希望你能帮忙

试试这个

<?php
    mail("name@myemailadress.nl", "Website formulier", $_POST['name'], $_POST['email'], $_POST['comments']);
?>

基于这种情况,我怀疑您在您的文本区域中使用了像CKEdit或TinyMCE这样的富文本编辑器

如果是这种情况,您应该知道这些编辑器不会直接影响textarea的文本,并且必须调用特定于编辑器的特殊方法来更新其内容。该方法在表单提交时自动调用,但对于通过ajax序列化和提交表单,它并不是那么简单

如果是这种情况,请告诉我您使用的是哪种编辑器,我可以告诉您如何正确准备文本区域进行序列化。

更改以下行

data : { 'stuff':stuff, }

或者你可以使用

data : $('#form').serialize();
或者你可以试试

data : {
    'name' : $('#name').val(),
    'email' : $('#email').val(),
    'comments' : $('#bericht').val()
}
并使用

$_POST['name']
$_POST['email']
$_POST['comments']

试试这段代码,它是有效的

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<form class="form" id="form" action="" method="POST" >

            <p class="name">
            <input type="text" name="name" id="name" placeholder="NAAM" >
            </p>

            <p class="email">
            <input type="text" name="email" id="email" placeholder="E-MAILADRES" >
            </p>    

            <p class="text">
            <textarea name="comments" id="comments" placeholder="BERICHT" ></textarea>
            </p>

            <p class="submit">
            <input type="submit" id="versturen_knop" class="submitBtn" value="VERSTUREN" >
            </p>
            </form>
        <script>    

            $(document).ready(function(){
$('#form').submit(function(event){
    $('.submitBtn').attr('value','BERICHT VERSTUURD!');

    setTimeout(function(){
        $('.submitBtn').attr('value','VERSTUREN');
    }, 2000);

    //var stuff = $('#form').serialize();

    jQuery.ajax({
        type: 'POST',
        url: 'mail.php', 
        data : $('#form').serialize(),
        dataType: "json"
    });

    //Prevents form submission
    return false;        
});
});

</script>



<?php
parse_str($_POST['stuff']);

mail("aa@ss.com", "Website formulier", "$name, $email, $comments");



?>

$(文档).ready(函数(){ $('#表单')。提交(函数(事件){ $('.submitBtn').attr('value','BERICHT VERSTUURD!'); setTimeout(函数(){ $('.submitBtn').attr('value','VERSTUREN'); }, 2000); //var stuff=$('#form').serialize(); jQuery.ajax({ 键入:“POST”, url:'mail.php', 数据:$('#form')。序列化(), 数据类型:“json” }); //阻止表单提交 返回false; }); });

您需要在双引号中添加整个内容。我已经测试过了,效果很好。

那么您在哪里收到textarea的内容呢?显示一些代码。您是否希望文本区域内容在PHP中自动作为$comments提供?teaxtarea在哪里@JohnVanDeWeghe,
serialize()
准备了一个查询字符串。@Sheikheera啊,没有看到,谢谢。这没用。正如您应该注意到的,他使用的是名称可笑的
parse_str()
,它将所有数组内容转储到本地命名空间变量中。更正,查询字符串格式内容,而不是数组内容。因此,我的php应该如何能够发送“评论”以及“姓名”和“电子邮件”?引用:“其他数据发送正常”。我正在使用TextWrangler。。。希望有帮助@不完全是。TextWrangler是您编辑源代码的程序,对吗?我指的是任何附加到textarea的JS文本插件,它们可以使编辑评论变得更容易。有吗?
$_POST['name']
$_POST['email']
$_POST['comments']
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<form class="form" id="form" action="" method="POST" >

            <p class="name">
            <input type="text" name="name" id="name" placeholder="NAAM" >
            </p>

            <p class="email">
            <input type="text" name="email" id="email" placeholder="E-MAILADRES" >
            </p>    

            <p class="text">
            <textarea name="comments" id="comments" placeholder="BERICHT" ></textarea>
            </p>

            <p class="submit">
            <input type="submit" id="versturen_knop" class="submitBtn" value="VERSTUREN" >
            </p>
            </form>
        <script>    

            $(document).ready(function(){
$('#form').submit(function(event){
    $('.submitBtn').attr('value','BERICHT VERSTUURD!');

    setTimeout(function(){
        $('.submitBtn').attr('value','VERSTUREN');
    }, 2000);

    //var stuff = $('#form').serialize();

    jQuery.ajax({
        type: 'POST',
        url: 'mail.php', 
        data : $('#form').serialize(),
        dataType: "json"
    });

    //Prevents form submission
    return false;        
});
});

</script>



<?php
parse_str($_POST['stuff']);

mail("aa@ss.com", "Website formulier", "$name, $email, $comments");



?>