Bootstrap+PHP實(shí)現(xiàn)多圖上傳功能實(shí)例詳解
使用bootstrap界面美觀,可預(yù)覽,可拖拽上傳,可配合ajax異步或同步上傳,下面是效果圖:


前端代碼:fileinput.html
<!DOCTYPE html>
<!-- release v4.1.8, copyright 2014 - 2015 Kartik Visweswaran -->
<html lang="en">
<head>
<meta charset="UTF-8"/>
<title>bootstrap多圖上傳</title>
<link href="/public/index/fileinput/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet">
<link href="/public/index/fileinput/css/fileinput.css" rel="external nofollow" media="all" rel="stylesheet" type="text/css" />
<script src="/public/index/fileinput/js/jquery-2.0.3.min.js"></script>
<script src="/public/index/fileinput/js/fileinput.js" type="text/javascript"></script>
<script src="/public/index/fileinput/js/bootstrap.min.js" type="text/javascript"></script>
<!-- 中文化 -->
<script src="/public/index/fileinput/js/fileinput_locale_zh.js" type="text/javascript"></script>
</head>
<body>
<div class="container kv-main">
<br>
<form enctype="multipart/form-data">
<div class="form-group">
<!-- 初始化插件 -->
<input id="file-1" type="file" multiple class="file" data-overwrite-initial="false" data-min-file-count="2" name="images">
</div>
</form>
</div>
</body>
<script>
// 初始化filleinput控件 第一次初始化
function initFileInput(ctrlName, uploadUrl){
var control = $('#'+ctrlName);
control.fileinput({
language: 'zh', //設(shè)置語言
uploadUrl:uploadUrl, //上傳的地址
allowedFileExtensions:['jpg','png'], //接收的文件后綴
showUpload:true, //是否顯示上傳按鈕
showCaption:false, //是否顯示標(biāo)題
maxFileSize: 1000, //圖片最大尺寸kb 為0不限制
maxFilesNum: 3, //最多上傳圖片
overwriteInitial: false,//不覆蓋已上傳的圖片
browseClass: "btn btn-info", //按鈕樣式
dropZoneEnabled: true,//是否顯示拖拽區(qū)域
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
msgFilesTooMany: "選擇上傳的文件數(shù)量({n}) 超過允許的最大數(shù)值{m}!",
});
}
//初始化fileinput控件,第一次初始化 (控件id,上傳地址)
initFileInput("file-1", "uploadImg");
// 監(jiān)聽事件
$("#file-1").on("fileuploaded", function (event, data, previewId, index) {
// 上傳地址
console.log(data);
});
</script>
</html>
后臺代碼:
/*
* bootst多圖上傳
*/
public function fileinput()
{
return $this->fetch();
}
public function uploadImg()
{
// var_dump($_FILES);
// 獲取表單上傳文件
$file = request()->file('images');
// 移動到框架應(yīng)用根目錄/public/uploads/img 目錄下
$info = $file->move(ROOT_PATH . 'public' . DS . 'uploads/img');
if($info){
// 成功上傳后 獲取上傳信息
$data['response'] = $info->getSaveName();
return json($data);
//圖片上傳成功,以下可對數(shù)據(jù)庫操作
// ......
}else{
// 上傳失敗獲取錯誤信息
echo $file->getError();
}
}
總結(jié)
以上所述是小編給大家介紹的Bootstrap+PHP實(shí)現(xiàn)多圖上傳功能實(shí)例詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
thinkPHP框架動態(tài)配置用法實(shí)例分析
這篇文章主要介紹了thinkPHP框架動態(tài)配置用法,結(jié)合實(shí)例形式分析了thinkPHP3.0之前的動態(tài)配置操作技巧及緩存相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-06-06
Laravel創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu)的例子
今天小編就為大家分享一篇Laravel創(chuàng)建數(shù)據(jù)庫表結(jié)構(gòu)的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
php實(shí)現(xiàn)圖形顯示Ip地址的代碼及注釋
這篇文章主要介紹了php實(shí)現(xiàn)圖形顯示Ip地址,有需要的朋友可以參考一下2014-01-01
Ajax實(shí)時驗(yàn)證用戶名/郵箱等是否已經(jīng)存在的代碼打包
一個網(wǎng)站采用Ajax技術(shù),不僅可以改善網(wǎng)站的用戶體驗(yàn)性,而且大大節(jié)約了寶貴的帶寬,減輕了服務(wù)器負(fù)荷(不再需要交互整個網(wǎng)頁內(nèi)容,而是局部)。2011-12-12
Laravel 解決419錯誤 -ajax請求錯誤的問題(CSRF驗(yàn)證)
今天小編就為大家分享一篇Laravel 解決419錯誤 -ajax請求錯誤的問題(CSRF驗(yàn)證),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10

