使用Ajax和PHP导入csv将csv导入mysql,而不是上载文件

使用Ajax和PHP导入csv将csv导入mysql,而不是上载文件,php,mysql,ajax,Php,Mysql,Ajax,我有以下几页 index.php importdata.php 我正在尝试使用ajax将csv文件导入MySql 我在网上使用了一些示例,但仍然不起作用 index.php 开头的脚本文件: $(document).ready(function(){ $("#but_import").click(function() { var formData = new FormData($("#import_form")); $.ajax({

我有以下几页

index.php importdata.php 我正在尝试使用ajax将csv文件导入MySql 我在网上使用了一些示例,但仍然不起作用 index.php

开头的脚本文件:

$(document).ready(function(){

    $("#but_import").click(function() {
        var formData = new FormData($("#import_form"));     
            $.ajax({
                url:"importData.php",
                data:formData,
                type:'POST',
                success:function(response) 
                {
                    var resp = $.trim(response);
                    $("#output").html(resp);
                }else[

                    $("#output").html("Error");

                });

    });
   }); 
脚本后面的HTML:

<html>
<head>
    <title>Import CSV file data to the MySQL using PHP</title>

</head>
<body>
 <form id="import_form" method="post" action="" enctype="multipart/form-data" >
        <table width="100%">

            <tr>
                <td style="width: 58px">
                    <input type='file' name="score_file" id="score_file">
                </td>

            </tr>
            <tr>
                <td colspan="2" >
                <input type="button" id="but_import" name="but_import" value="Import File"></td>
            </tr>

        </table>
    </form>


<table style="width: 100%">
    <tr>
        <td id="output">&nbsp;</td>
    </tr>
</table>
</body>

它产生了什么错误

还要看importdata.php的拼写


在ajax中,您有url:importData.php,但一开始您说您有importData.php。

我现在通过以下操作获得发布的信息

$(document).ready(function() {

$("#but_import").click(function() {
    var formData = new FormData($('score_file')[0]);        



    alert(formData);    


        $.ajax({
             url: 'importData.php',
               data: formData,
              type: 'POST',
              contentType: false, 
                 processData: false,                
                 success:function(response) {
                        var resp = $.trim(response);
                        $("#message").html("yes");

                        }
        });

});

});
php表单上的Bit现在接收到以下错误 未定义索引:第6行importData.php中的score_文件

这是html文件中的输入框

<form id="import_form" name ="import_form" method="post" action="post" enctype="multipart/form-data" >
        <table width="100%">

            <tr>
                <td style="width: 58px">
                    <input type='file' name="score_file" id="score_file">
                </td>

            </tr>
            <tr>
                <td colspan="2" >
                <input type="button" id="but_import" name="but_import" value="Import File"></td>
            </tr>

        </table>
    </form>

错误在第二行

这是HTML部分,所以哪一方不工作服务器?或者可能是数据格式化。尝试此新FormData$'import\u form'[0]。可能Im的副本在将表单信息传递到importData.php表单时遇到问题。无法100%确定ajax格式是否正确。我对此一无所知。我看了一下帖子。我实际上正试图使用ajax调用将数据从csv文件导入mysql。我不想刷新页面。以前,我使用该格式设法恢复查询。但是现在仍然坚持使用ajax调用将要从index.php导入的文件名传递到importdata.php。拼写正确。我写这篇文章时打错了字。我没有收到任何错误。一切都没有发生,所以请修改成功调用的函数。请看下面的链接。
 $csvMimes = array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel', 'text/plain');
if(!empty($_FILES['score_file']['name']) && in_array($_FILES['score_file']['type'],$csvMimes)){