您的位置:首页 > 编程语言 > PHP开发

PHP MVC框架skymvc支持多文件上传

2016-05-26 00:00 791 查看
本文实例为大家分享了skymvc实现文件上传的具体代码,供大家参考,具体内容如下

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;
//设置允许上传的文件类型
$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;
//根据Id存储
$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>上传结果</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("上传出错了");
}
*/


以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

您可能感兴趣的文章:

PHP文件上传实例详解!!!
php 动态多文件上传
jQuery Ajax文件上传(php)
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
PHP 图片文件上传实现代码
php 文件上传类代码
php 文件上传实例代码
php+ajax实现图片文件上传功能实例
PHP实现视频文件上传完整实例
一个经典的PHP文件上传类分享
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php skymvc 文件上传