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

我有以下页面</ p>


  • index.php < /li>
  • importdata.php


nn

我试图使用ajax将csv文件导入MySql
我在网上使用了dsome exapmples但仍然不会 work
index.php </ p>

开头的脚本文件:</ p>

  $(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”);

});

});
});

</ code> </ pre>

脚本后的HTML:</ p>

 &lt; html&gt; 
&lt; head&gt;
&lt; title&gt;使用PHP&lt; / title&gt;

&lt; / head&gt;
&lt; body&gt;
&lt; form id =“import_form”method =“post”action =“”enctype =“将CSV文件数据导入MySQL multipart / form-data“&gt;
&lt; table width =”100%“&gt;

&lt; tr&gt;
&lt; td style =”width:58px“&gt;
&lt; input type = 'file'name =“score_file”id =“score_file”&gt;
&lt; / td&gt;

&lt; / tr&gt;
&lt; tr&gt;
&lt; td colspan =“2”&gt; \ n&lt; input type =“button”id =“but_import”name =“but_import”value =“Import File”&gt;&lt; / td&gt;
&lt; / tr&gt;

&lt; / table&gt;
&lt; / form&gt;

&lt; table style =“width:100%”&gt;
&lt; tr&gt;
&lt; td id =“output”&gt;&amp; nbsp;&lt; / td&gt;

&lt; / tr&gt;
&lt; / table&gt;
&lt; / body&gt;
</ code> </ pre>

</ p>
</ div>

展开原文

原文

I have followin pages

  • index.php
  • importdata.php

Im trying to use ajax importing a csv file into MySql I used dsome exapmples on the net but still wont work index.php

the Script file in the beginning:

$(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");

                });

    });
   }); 

The HTML after the script:

<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>

douyuanliao8815
douyuanliao8815 看来你的花括号和括号是非常错误的。尝试修复这些。
2 年多之前 回复
douchenbiao0916
douchenbiao0916 可能重复如何异步上传文件?
2 年多之前 回复
dongxiaoyan4388
dongxiaoyan4388 我看了看帖子。我正在尝试使用ajax调用将数据从csv文件导入到mysql。我不想刷新页面。我之前设法使用该格式获取查询。但现在坚持传递文件名以使用ajax调用从index.php导入importdata.php
2 年多之前 回复
dtvfshi5248
dtvfshi5248 我无法将表单信息传递给importData.php表单。不能100%确定ajax格式是否正确。我是个菜鸟。
2 年多之前 回复
dthp96899
dthp96899 也许是数据格式化。试试这个新的FormData($('#import_form')[0])。也许复制stackoverflow.com/questions/166221/...
2 年多之前 回复
doushun4666
doushun4666 哪一方不在服务器上工作或?
2 年多之前 回复
dongxieyou3314
dongxieyou3314 这是HTML部分抱歉
2 年多之前 回复

2个回答



我设法获取现在发布的信息</ p>

  $(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”);

}
} );

});

});
</ code> </ pre>

现在位于php表单上我收到以下错误
未定义索引:score_file in 第6行的importData.php </ p>

这是html文件中的输入框</ p>

 &lt; form id =“import_form”name =“import_form  “method =”post“action =”post“enctype =”multipart / form-da  ta“&gt; 
&lt; table width =”100%“&gt;

&lt; tr&gt;
&lt; td style =”width:58px“&gt;
&lt; input type ='file'name =“score_file”id =“score_file”&gt;
&lt; / td&gt;

&lt; / tr&gt;
&lt; tr&gt;
&lt; td colspan =“2”&gt;
&lt;输入 type =“button”id =“but_import”name =“but_import”value =“Import File”&gt;&lt; / td&gt;
&lt; / tr&gt;

&lt; / table&gt;
&lt; / form&gt ;
</ code> </ pre>

和php文件的前2行</ p>

  $ csvMimes = array('text / x- 逗号分隔值','text /逗号分隔值','应用程序/八位字节流','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 '])&amp;&amp; in_array($ _ FILES ['score_file'] ['type'],$ csvMimes)){
</ code> </ pre>

错误在第二行</ p>
</ DIV>

展开原文

原文

I manage to get information posted now doing the following

$(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");

                        }
        });

});

});

Bit now on the php form Im receiving following error Undefined index: score_file in importData.php on line 6

This is the inputbox in html file

<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>

and the first 2 line of php file

 $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)){

The error is on the 2nd line



它发出了什么错误。</ p>

另请查看“importdata.php”的拼写 “。</ p>

在ajax中你有”url:“importData.php”“但是在开始你说你有”importdata.php“。</ p>
</ div >

展开原文

原文

What error does it put out.

Also look at the spelling of "importdata.php".

In the ajax you have "url:"importData.php"" but at the start you said you have "importdata.php".

doutuan4361
doutuan4361 还请修改成功调用的函数。 请看下面的链接。 stackoverflow.com/questions/12851839/...
2 年多之前 回复
dongshuo9350
dongshuo9350 对不起是的。 拼写是正确的。 我在做帖子时打字不正确。 我不接受任何错误。 什么都没发生
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐