php - JavaScript 表单已提交,但发布数据在 PHP 中不可用

标签 php jquery forms form-submit

表单似乎已提交(到同一页面 - contact.php),但我无法使用发布的数据,例如 $_POST["message"] 。似乎它们是空的(我试图回应它们,但没有打印出任何内容)。

这是 JavaScript(在页面的头部):

$(document).ready(function (){
    $('#contactform').submit(function(){
        var action = $(this).attr('action');
        $.post("contact.php", {
            name: $('#name').val(),
            email: $('#email').val(),
            company: $('#company').val(),
            subject: $('#subject').val(),
            message: $('#message').val()
        }, function(data,status){
            alert("status = " + status);            
            $('#contactform #submit').attr('disabled','');
            if(data=='Message sent!') $('#contactform').slideUp();
           });
           return false;
    });
});  

这是表格:

<form action="contact.php" method="post" id="contactform">
  <ol>
     <li>
        <label for="name">First Name <a href="#">*</a></label>
        <input name="name" id="name" class="text">
     </li>
     <li>
        <label for="email">Your e-mail <a href="#">*</a></label>
        <input id="email" name="email" class="text">
     </li>
     <li>
        <label for="company">Company Name</label>
        <input id="company" name="company" class="text">
     </li>
     <li>
        <label for="subject">Subject<br>
        </label>
        <input id="subject" name="subject" class="text">
     </li>
     <li>
        <label for="message">Message <a href="#">*</a></label>
        <textarea id="message" name="message" rows="6" cols="50"></textarea>
     </li>
     <li class="buttons">
        <input type="image" name="submitbtn" id="submitbtn" src="images/but_send_message.gif">
     </li>
  </ol>
</form>  

JavaScript 上的 alert("status = "+ status); 部分会弹出状态为 success

已更新

这是 contact.php 顶部的 PHP 部分

<?php
  if(isset($_POST["message"])){
    echo '<script>alert("some dummy text");</script>';
  };
?>  

这不仅是 echo 不打印任何内容,而且我无法访问已发布数据中的值。 PHPMailer 可以很好地处理手动为参数分配文本的情况。

最佳答案

如果$_POST返回空数据。确保您没有任何 htaccess 导致此问题。 我曾经遇到过这个问题。我的htaccess总是清空post数据。修改htaccess后我的问题就解决了。

关于php - JavaScript 表单已提交,但发布数据在 PHP 中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17206059/

相关文章:

php - 以php形式验证手机号码

php - 如何使用ajax在DIV中加载AngularJs页面

php - 当没有更多帖子显示时隐藏加载更多按钮

javascript - Jasny 多文件上传与其他表单元素

javascript - 如何将变量添加到 jQuery 中的 href 选择器?

forms - 如果在 Devise 注册表单中出现注册错误,则重定向到相同的路由 rails 4

php - 在数据库中搜索到图片后如何删除它?

javascript - jQuery - 仅更改 Y 轴的 CSS 背景位置

javascript - Jquery使用字符串动态地按id选择对象

javascript - 使用 Bootstrap PHP 表单向导插入到 sql