从Ajax传递数据时,PHP未定义错误

时间:2019-05-16 12:01:49

标签: php ajax

我只是想将数字id传递给Php页面,并且我想使用$ _POST ['id']来使用它,但是却出现未定义的错误。检查屏幕截图https://imgur.com/a/M1v4mEX并检查下面的代码

===> edit.php

  $('#update').click(function(){
           var serialData = new FormData($("#regForm")[0]), 
               s = location.search.split('='), 
              searchId = s[s.length-1];

              console.log(serialData);
              console.log(searchId);
         serialData.append('id',9);
        $.ajax({
            method:'POST', 
            url:'update.php',
            dataType:'json', 
            data:  {id:9},
            success:function(jsonObj){
            console.log(jsonObj);
          }
        });
     });

==> update.php

             <?php 
                 if(isset($_POST['submit'])){

                  var_dump($_POST['id']);
                         exit();

             }
             ?>

1 个答案:

答案 0 :(得分:0)

您忘记更改 id 值,以将参数从location.search

发送为动态值

还考虑添加e.preventDefault();,因为您正在处理表单提交。

我认为可以删除serialData,因为它不会影响当前的代码逻辑

这是工作脚本

<script>
    $('#update').click(function(e) {
            e.preventDefault();
            var s = location.search.split('=');
            var searchId = s[s.length-1];

            // Verify the current ID passed on search parameter
            console.log(searchId);
        $.ajax({
            method:'POST', 
            url:'update.php',
            dataType:'json', 
            data:  { 'id': searchId },
            success:function(jsonObj){
                console.log(jsonObj);
            }
        });
    });
</script>