2017-04-23 80 views
1

我想使用ajax将文件从输入发送到php脚本。 以下是我迄今所做的:用ajax发送文件输入到php

HTML

<div id="inserting"> 
    <button id="inserting_btn">Upload</button> 
    <input type="file" id="inserting_file"/> 
    </div> 

JS

$('#inserting_btn').click(function(){ 
     var file = $('#inserting_file').val(); 
     $.ajax({ 
      method: 'POST', 
      url: 'input_text/import.php', 
      data: 'file='+file, 
      success: function(data){ 
       alert(data); 
      } 
     }); 
    }); 

PHP文件import.php

if ($_FILES['file']['tmp_name']){ 
     echo 'yes'; 
    } 
    else { 
     echo 'no'; 
    } 

(对不起,我的英语。)

+0

[jQuery AJAX文件上传PHP]可能的重复(http://stackoverflow.com/questions/23980733/ jquery-ajax-file-upload-php) –

+0

我只是用 - data:{“file”:file}, – Brad

回答

1
data: {file: file} 

尝试用这种

,并在PHP

$file = $_POST['file']; 
0

尝试更换数据线在你的代码更改此:

$('#inserting_btn').click(function(){ 
    var file_rec = $('#inserting_file').prop("files")[0]; // get the file 
    var form_data = new FormData();     
    form_data.append('file', file_rec); 
    $.ajax({ 
     method: 'POST', 
     url: 'input_text/import.php', 
     data: form_data, 
     success: function(data){ 
      alert(data); 
     } 
    }); 
}); 

PHP文件import.php

if ($_FILES['file']){ 
    echo 'yes'; 
} 
else { 
    echo 'no'; 
}