PHP Ajax使用formdata()时无发布数据;

时间:2018-09-13 19:51:15

标签: php ajax forms file upload

我正在尝试制作Ajax表单以读取Excel文件并将记录放入数据库中。 表格包含2个栏位;日期输入和文件输入。

当我运行以下代码时,php文件'/functions/ajax/CD/importpayments.php'收到表单的发布数据;

$.ajax({
      type: "POST",
        url: "./functions/ajax/CD/importpayments.php",
        // data: form_data,
        data:$("#form").serialize(),                
        success : function(data){
          $("#data").html("");
          $("#data").html("<center><font color='green'><b>Succesfull</b></font></center>  ");
          console.log(data);           
        }
    });

当我尝试处理包含文件的Ajax时,我查看了以下帖子;

Uploading both data and files in one form using Ajax?

虽然我在以下代码中使用了该方法,但是php文件没有收到任何表单数据;

    var form_data = new FormData(this);
    $.ajax({
      type: "POST",
        url: "./functions/ajax/CD/importpayments.php",
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,

我也尝试了以下类似方法,但是没有任何运气。

var file_data = $('#file').prop('files')[0];
    var form_data = new FormData(this);
    form_data.append('file', file_data);
    console.log($("#form").serialize());
    $.ajax({
      type: "POST",
        url: "./functions/ajax/CD/importpayments.php",
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,

现在我实际上不知道为什么在不使用formData处理数据的情况下仍然可以正常工作,我尝试了许多不同的方法和方式。

我正在使用支持formData的Chrome

0 个答案:

没有答案