1
ajaxを使用してブラウザにテキストファイルをアップロードしたいが、それを行う方法がわからない。ファイルはアップロードされず、var_dump($ files)はarray(0)を返します。AJAXアップロードファイルが動作しない
HTML:
<form id="uploadsql" action="upload.js" method="post" enctype="multipart/form-data">
<input id="uploadFile" type="text" disabled="disabled" placeholder="Choose File" />
<div class="fileUpload btn btn-primary">
<span>Upload</span>
<input id="uploadBtn" name="file" type="file" class="upload"required />
</div>
<div class="fileUpload btn btn-primary">
<span>Submit</span>
<input type = "submit" id="uploadBtn" class="upload" /></div>
</form>
<h4 id='loading' >Loading...</h4>
<div id="message"></div>
<script type="text/javascript">
document.getElementById("uploadBtn").onchange = function() {
document.getElementById("uploadFile").value = this.value;
};
</script>
JS:
$(document).ready(function (e) {
$("#uploadsql").on('submit',(function(e) {
e.preventDefault();
$("#message").empty();
$('#loading').show();
$.ajax({
url: "upload.php", // Url to which the request is send
type: "POST", // Type of request to be send, called as method
cache: false, // To unable request pages to be cached
success: function(data) // A function to be called if request succeeds
{
$('#loading').hide();
$("#message").html(data);
}
});
}));
});
はPHP:私はここで何が問題を
<?php
set_time_limit(0);
header('content-type: text/html; charset=utf-8');
header("access-control-allow-origin: *");
include 'connect.php';
if(isset($_FILES["uploadBtn"]["type"]))
{
echo 'yes';
} else {
$files = $_FILES;
var_dump ($files);
}
?>
をやっていますか? ありがとうございます!
[jQuery.ajaxでのmultipart/formdataの送信]の可能な複製(http://stackoverflow.com/questions/5392344/sending-multipart-formdata-with-jquery-ajax) – apokryfos
ありがとうございました@apokryfos助けて! – SLFl