[英]How can I upload .mp4, .mp3 and .doc Files along other FormData with AJAX?
美好的一天,伙計們。 我一直在從 AJAX 上傳文件(文檔和圖像)。 雖然,我已經搜索了這個網站以從 AJAX 上傳視頻,但我還沒有看到我想要的內容。 我只看到,上傳一個直播視頻,這並沒有真正幫助我。
現在,我想從 AJAX 上傳所有三個(文檔、音頻和視頻)。 下面的代碼在我只上傳 select.DOC 時運行良好,但當我結合.DOC 和.MP4 文件時它不起作用。
var fdata = new FormData();
fdata.append("cid", $("#tclass").val() ); fdata.append("subj", $("#tsubj").val() );
fdata.append("sess", $("#sess").val() ); fdata.append("term", $("#term").val() );
fdata.append("title", $("#lessontitle").val() );
if( $("#lessontext").val() !== ""){ fdata.append("note", $("#lessontext").val() ); }
fdata.append("video", $("#videofile")[0].files[0] );
fdata.append("doc", $("#docfile")[0].files[0] );
fdata.append("audio", $("#audiofile")[0].files[0] );
document.getElementById("msgStatus").innerHTML = "Uploading Lesson and Checking for Previously Uploaded Title";
$.ajax({
type: 'POST',
url: "lessons/validateupload/",
data:fdata,
contentType: false,
processData: false,
cache: false,
success: function(data){ alert(data);
$('#msgStatus').html(data);
if(data.indexOf("successfully") > -1){
closeForm();
}
}
})
當我只使用 SELECT 時,從 PHP 返回的結果.doc
Array
(
[cid] => 1-JSS1A
[subj] => 1-MATHEMATICS
[sess] => 1
[term] => 1
[title] => INTEGRATION
[note] => thhis is a mathematical concept...
[video] => undefined
[audio] => undefined
)
Array
(
[doc] => Array
(
[name] => Design and Implementation of a Web.docx
[type] => application/vnd.openxmlformats-officedocument.wordprocessingml.document
[tmp_name] => C:\wamp64\tmp\php9185.tmp
[error] => 0
[size] => 711124
)
)
這是當我組合.doc 文件和.mp4 文件時的結果,我得到空 ARRAYs
Array
(
)
Array
(
)
當我嘗試僅上傳.mp4 時,我也得到空的 arrays
Array
(
)
Array
(
)
請我需要幫助。 我真的不明白做錯了什么。 謝謝你。
我已經解決了這個問題。 我不得不編輯我的 Php.ini 文件,將 post_max_size 增加到 200。我還計算了我的 ajax 帖子以批量上傳文件。 上傳文件1后,會檢查eventCompleteHandler()中的responseText。 如果它重新運行成功,則檢查是否選擇了另一個文件並發布它,否則檢查另一個文件並發布它。 如果沒有其他文件,則報告.. 上傳成功並完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.