支援多檔案上傳,預覽,拖拽,基於bootstrap的上傳外掛fileinput的ajax非同步上傳

sangjinchao發表於2016-08-19

首先需要匯入一些js和css檔案

<link href="__PUBLIC__/CSS/bootstrap.css" rel="stylesheet">

<link type="text/css" rel="stylesheet" href="__PUBLIC__/CSS/fileinput.css" />

 <script type="text/javascript" src="__PUBLIC__/JS/bootstrap.min.js"></script>

<script type="text/javascript" src="__PUBLIC__/JS/jquery.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/JS/fileinput.js"></script>

<script type="text/javascript" src="__PUBLIC__/JS/fileinput_locale_zh.js"></script>//中文包,不需要可以不用匯入

html程式碼

<form enctype="multipart/form-data">

  <input id="file-1" name="file" type="file" multiple class="file" data-overwrite-initial="false" data-min-file-count="1"/>

</form>

js程式碼

$("#file-1").fileinput({
  uploadUrl: '', // 必須設定個路徑進入php程式碼部分
  allowedFileExtensions : ['jpg', 'png','gif','txt','zip','ico','jpeg','js','css','java','mp3','mp4','doc','docx'],//允許的檔案型別
  overwriteInitial: false,
  maxFileSize: 1500,//檔案的最大大小 單位是k
  maxFilesNum: 10,//最多檔案數量 
  // allowedFileTypes: ['image', 'video', 'flash'],
  slugCallback: function(filename) {
    return filename;
  }
});

php程式碼

$file=$_FILES['file'];//獲取上稱檔案的資訊,陣列形式

$date['file_name'] = $file['name'];//檔案的名稱
$date['file_size'] = $file['size'];//檔案的大小
$date['file_type'] = $file['type'];//檔案的型別

然後進行上傳,用ajax返回一個錯誤資訊或者成功資訊

直接用echo返回也行。

樣式:



相關文章