PHP MVC框架skymvc支持多文件上傳
本文實(shí)例為大家分享了skymvc實(shí)現(xiàn)文件上傳的具體代碼,供大家參考,具體內(nèi)容如下
1.代碼upload.ctrl.php
<?php
class uploadControl extends skymvc{
public function __construct(){
parent::__construct();
}
public function onDefault(){
$this->smarty->display("upload/default.html");
}
public function onUpload(){
$this->loadClass("upload");
//上傳的文件目錄
$this->upload->uploaddir="attach/my/";
//允許上傳的文件大小
$this->upload->maxsize=4194304000;
//是否上傳圖片
$this->upload->upimg=true;
//設(shè)置允許上傳的文件類(lèi)型
$this->upload->sysallowtype=array('gif','jpg','bmp','png','jpeg','txt','mpeg','avi','rm','rmvb','wmv','flv','mp3','wav','wma','swf','doc','pdf','zip','tar','svg');
$this->upload->allowtype=$this->upload->sysallowtype;
//根據(jù)Id存儲(chǔ)
$this->upload->iddir=0;
$data=$this->upload->uploadfile("upimg");
//print_r($data);
echo json_encode($data);
}
}
?>
2.代碼upload.html
<!doctype html>
<html>
{include file="head.html"}
<body>
{include file="header.html"}
<div class="main-body box960">
<form method="post" action="/index.php?m=upload&a=upload" enctype="multipart/form-data">
<div class="row">
<div class="btn-upload">
<i class="iconfont icon-upload"></i>
上傳文件
<div class="btn-upload-file">
<input type="file" id="upimg" name="upimg" multiple>
</div>
</div>
</div>
<div style="height:10px;"></div>
<div class="row">
<input type="submit" class="btn" value="上傳">
</div>
</form>
<h3>上傳結(jié)果</h3>
<div class="result" id="result"></div>
</div>
{include file="footer.html"}
<style>
.result{border:1px solid #ccc; padding:5px;}
.result div{line-height:24px;}
.result .e{color:#D58384;}
.result .s{color:#59A42A;}
</style>
<script src="/static/js/skyupload.js"></script>
<script>
$(document).on("change","#upimg",function(data){
skyUpload("upimg","/index.php?m=upload&a=upload&ajax=1",function(e){
var data=eval("("+e.target.responseText+")");
if(data.err){
$("#result").append('<div class="e">error:'+data.err+'</div>');
}else{
$("#result").append('<div class="s">success:'+data.filename+'</div>');
}
});
});
</script>
</body>
</html>
3.PHP代碼
function skyUpload(upid,url,success,error,uploadProgress)
{
var vFD = new FormData();
var f= document.getElementById(upid).files;
$("#"+upid+"loading").show();
for(var i=0;i<f.length;i++){
vFD.append('upimg', document.getElementById(upid).files[i]);
var oXHR = new XMLHttpRequest();
oXHR.addEventListener('load', success, false);
oXHR.addEventListener('error', error, false);
if(uploadProgress!=undefined){
oXHR.upload.addEventListener("progress", uploadProgress, false);
}
oXHR.open('POST',url);
oXHR.send(vFD);
}
}
/*
function uploadFinish(e){
var data=eval("("+e.target.responseText+")");
$("#uploading").hide()
if(data.error != '')
{
skyToast(data.msg);
}else
{
$("#imgShow").html("<img src='/"+data.imgurl+".100x100.jpg' width='100'>");
$("#imgurl").val(data.imgurl);
}
}
function uploadError(e) { // upload error
skyToast("上傳出錯(cuò)了");
}
*/
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)php程序設(shè)計(jì)有所幫助。
- php打造屬于自己的MVC框架
- PHP的MVC模式實(shí)現(xiàn)原理分析(一相簡(jiǎn)單的MVC框架范例)
- php實(shí)現(xiàn)最簡(jiǎn)單的MVC框架實(shí)例教程
- 基于PHP Web開(kāi)發(fā)MVC框架的Smarty使用說(shuō)明
- php實(shí)現(xiàn)簡(jiǎn)單的MVC框架實(shí)例
- 搭建自己的PHP MVC框架詳解
- PHP簡(jiǎn)單的MVC框架實(shí)現(xiàn)方法
- PHP仿tp實(shí)現(xiàn)mvc框架基本設(shè)計(jì)思路與實(shí)現(xiàn)方法分析
- PHP從零開(kāi)始打造自己的MVC框架之入口文件實(shí)現(xiàn)方法詳解
相關(guān)文章
詳解WordPress中過(guò)濾鏈接與過(guò)濾SQL語(yǔ)句的方法
這篇文章主要介紹了詳解WordPress中過(guò)濾鏈接與過(guò)濾SQL語(yǔ)句的方法,主要用于防止不安全協(xié)議和SQL注入攻擊,需要的朋友可以參考下2015-12-12
PHP動(dòng)態(tài)編譯出現(xiàn)Cannot find autoconf的解決方法
這篇文章主要介紹了PHP動(dòng)態(tài)編譯出現(xiàn)Cannot find autoconf的解決方法,是PHP程序設(shè)計(jì)中經(jīng)常會(huì)遇到的問(wèn)題,需要的朋友可以參考下2014-11-11
詳解Swoole跟傳統(tǒng)的web開(kāi)發(fā)的區(qū)別
Swoole高效跟傳統(tǒng)的web開(kāi)發(fā)有什么區(qū)別,除了傳統(tǒng)的LAMP/LNMP同步開(kāi)發(fā)模式,swoole的異步開(kāi)發(fā)模式是怎么樣的。本文帶著大家來(lái)詳細(xì)介紹一下。2021-05-05
總結(jié)的一些PHP開(kāi)發(fā)中的tips(必看篇)
下面小編就為大家?guī)?lái)一篇總結(jié)的一些PHP開(kāi)發(fā)中的tips(必看篇)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03

