日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php 拖动多个文件上传,dropzone拖拽文件上传一次上传多个文件的方法

發布時間:2025/3/12 php 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 拖动多个文件上传,dropzone拖拽文件上传一次上传多个文件的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

用dropzone插件拖拽文件上傳默認情況是把一個文件拖到瀏覽器后就立即自動上傳,參考前文《用dropzone插件拖拽文件上傳》,如果需要一次上傳多個文件怎么辦?本文將介紹其實現方法。

dropzone一次上傳多個文件

實例代碼

把圖片拖到下面進行上傳

Upload

$(document).ready(function () {

Dropzone.options.form1 = {

//禁止自動提交上傳autoProcessQueue: false,

//一次最多上傳文件數parallelUploads: 10,

maxFiles: 10,

//文件最大體積

maxFilesize: 0.5, //單位:MB

//限制文件類型

acceptedFiles: ".jpg, .jpeg, .png, .gif, .pdf",

//刪除按鈕

addRemoveLinks: true,

init: function (e) {

var myDropzone = this;

$('#btn_upload').on("click", function() {

myDropzone.processQueue(); // Tell Dropzone to process all queued files.

});

// Event to send your custom data to your server

myDropzone.on("sending", function(file, xhr, data) {

// First param is the variable name used server side

// Second param is the value, you can add what you what

// Here I added an input value

//data.append("your_variable", $('#your_input').val());

});

}

};

});

后臺上傳程序使用php實現,代碼如下:

if (!empty($_FILES)) {

if(is_array($data)){

foreach($_FILES['file']['tmp_name'] as $key => $value) {

$tempFile = $_FILES['file']['tmp_name'][$key];

$targetFile = $_FILES['file']['name'][$key];

move_uploaded_file($tempFile,$targetFile);

}

}

else{

$tempFile = $_FILES['file']['tmp_name'];

$targetFile = $_FILES['file']['name'];

move_uploaded_file($tempFile,$targetFile);

}

}

?>

代碼解釋

1、使用插件

需要用到jquery庫文件,我們可直接用百度的cdn公共庫文件。

其次使用插件dropzone.js,注意文件路徑寫正確。

2、html代碼

添加一個form標簽,和一個button標簽。

form標簽的action是上傳文件的后臺程序。button是需要點擊的“上傳”按鈕。

Upload

3、jquery代碼

$(document).ready(function () {

Dropzone.options.form1 = {

//禁止自動提交上傳autoProcessQueue: false,

//一次最多上傳文件數

parallelUploads: 10,

maxFiles: 10,

//文件最大體積maxFilesize: 0.5, //單位:MB

//限制文件類型acceptedFiles: ".jpg, .jpeg, .png, .gif, .pdf",

//刪除按鈕

addRemoveLinks: true,

init: function (e) {

var myDropzone = this;

$('#btn_upload').on("click", function() {

myDropzone.processQueue(); // Tell Dropzone to process all queued files.

});

// Event to send your custom data to your server

myDropzone.on("sending", function(file, xhr, data) {

// First param is the variable name used server side

// Second param is the value, you can add what you what

// Here I added an input value

//data.append("your_variable", $('#your_input').val());

});

}

};

});

多文件上傳,主要是用到參數parallelUploads和maxFiles,如果沒有這兩個參數,則默認是最多一次上傳2個文件。

這里注意Dropzone.options.form1中的form1是html代碼里的form標簽的id名稱。btn_upload是html代碼里的button標簽按鈕的id名稱。

4、php程序

需要明白多文件上傳時多個文件是一個數組,所以后臺程序要視作接收一個數組來處理,if(is_array($data))就是判斷接收的數據是否數組,如果只上傳一個文件,則不是數組。

注意問題

dropzone插件不支持上傳文件名含中文字符。

總結

以上是生活随笔為你收集整理的php 拖动多个文件上传,dropzone拖拽文件上传一次上传多个文件的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。