php - Use jQuery AJAX to upload a file via FormData -


i want upload single file using jquery , replace upload form output php script has processed file upload.

currently after click submit, receive blank response php script. think it's because form data (file , upload inputs) being overwritten upload data?

any solving appreciated!

here code:

html

<div id="container">     <form id="form" enctype="multipart/form-data">         <input name="file" type="file">         <input type="hidden" name="upload">     </form>     <a href="javascript:void(0)" onclick="uploaddata($('#form').serialize(), 'upload.php', '#container'); return false;">upload &gt;</a> </div> 

javascript

function uploaddata(data, url, container) {      var formdata = new formdata($(data)[0]);      $.ajax({         type: 'post',         url: url,         data: formdata,         cache: false,         contenttype: false,         processdata: false,         success: function(response) {             $(container).html(response);         },         error: function() {             alert('error!');         },     });      return false; }; 

php

if (isset($_post['upload'])) {      // check file has been uploaded     if (isset($_files['file'])) {          // check if there error uploading file         if ($_files['file']['error'] > 0) {              // display error             echo 'error: ' . $_files['file']['error'];         } else {              // move , store file (overwrite if exists)             $filename = '/upload/' . $_files['file']['name'];             move_uploaded_file($_files['file']['tmp_name'], $filename);              echo 'file uploaded successfully';         }     } else {          die ('error: no file selected upload');     }  } 

i don't think ajax can handle file uploads. have checked file uploaded?

if true, response empty because isset($_post['upload']) returns false. try adding last else statement, check i'm saying:

if (isset($_post['upload'])) {     ... } else {     die ('error: ajax cannot handle file uploads'); } 

Comments

Popular posts from this blog

c# - Send Image in Json : 400 Bad request -

jquery - Fancybox - apply a function to several elements -

An easy way to program an Android keyboard layout app -