0
FormData 및 XMLHttpRequest를 통해 파일을 업로드하려고합니다. 파일을 폴더에 저장할 수 없습니다. 잘못된 위치를 모른다. 마침내 나는이 메시지를 보낼 수 있기를 희망한다 : 당신의 포스트는 코드 섹션을 설명하기위한 많은 문맥을 가지고 있지 않다. 귀하의 시나리오를보다 명확하게 설명하십시오.HTML 5 업로드 파일을 저장할 수 없습니다.
$(document).ready(function(){
function defaults(e){
e.stopPropagation();
e.preventDefault();
}
$(":file").live("change", function(){
handleFiles(this.files);
});
function handleFiles(files,e){
// Traverse throught all files and check if uploaded file type is image
var imageType = /image.*/;
var file = files[0];
// check file type
if (!file.type.match(imageType)) {
alert("File \""+file.name+"\" is not a valid image file, Are you trying to screw me :(:(");
return false;
}
// check file size
if (parseInt(file.size/1024) > 2050) {
alert("File \""+file.name+"\" is too big. I am using shared server :P");
return false;
}
var info = '<div class="preview active-win"><div class="preview-image"><img ></div><div class="progress-holder"><span id="progress"></span></div><span class="percents"></span><div style="float:left;">Uploaded <span class="up-done"></span> KB of '+parseInt(file.size/1024)+' KB</div>';
$(".upload-progress").show("fast",function(){
$(".upload-progress").html(info);
uploadFile(file);
});
}
function uploadFile(file){
var fd = new FormData();
fd.append('filez', file);
var xhr = new XMLHttpRequest();
xhr.upload.addEventListener("progress", uploadProgress, false);
xhr.addEventListener("load", uploadComplete, false);
xhr.addEventListener("error", uploadFailed, false);
xhr.addEventListener("abort", uploadCanceled, false);
xhr.open("POST", "upload.php", true);
xhr.send(fd);
function uploadProgress(event) {
if (event.lengthComputable) {
$("#progress").css("width",(event.loaded/event.total) * 100 + "%");
$(".percents").html(" "+((event.loaded/event.total) * 100).toFixed() + "%");
$(".up-done").html((parseInt(event.loaded/1024)).toFixed(0));
} else {
alert("Failed to compute file upload length");
}
}
function uploadComplete(event) {
$("#progress").css("width","100%");
$(".percents").html("100%");
$(".up-done").html((parseInt(file.size/1024)).toFixed(0));
}
function uploadFailed(event) {
alert("There was an error attempting to upload the file.");
}
function uploadCanceled(event) {
alert("The upload has been canceled by the user or the browser dropped the connection.");
}
}
});
HTML
<form action="" method="post" enctype="multipart/form-data">
<input type="file" id="file" name="filez" accept="image/*">
<div class="upload-progress"></div>
</form>
해결 된 나쁜 이름 : $ _FILES [ 'filetext'] –
자신의 질문에 답하고 대답을 수락하십시오. – Ivan