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


Posted in PHP onMay 26, 2016

 本文实例为大家分享了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 db类库进行数据库操作
Mar 19 PHP
php smarty 二级分类代码和模版循环例子
Jun 16 PHP
PHP中防止SQL注入方法详解
Dec 25 PHP
PHP实用函数分享之去除多余的0
Feb 06 PHP
php插入排序法实现数组排序实例
Feb 16 PHP
Yii2针对指定url的生成及图片等的引入方法小结
Jul 18 PHP
微信公众平台开发(五) 天气预报功能开发
Dec 03 PHP
php获取文件名称和扩展名的方法
Feb 07 PHP
PHP实现通过CURL上传文件功能示例
May 30 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
Jun 11 PHP
详解PHP 7.4 中数组延展操作符语法知识点
Jul 19 PHP
YII2.0框架行为(Behavior)深入详解
Jul 26 PHP
CodeIgniter集成smarty的方法详解
May 26 #PHP
PHPExcel简单读取excel文件示例
May 26 #PHP
php快速排序原理与实现方法分析
May 26 #PHP
深入理解PHP中的empty和isset函数
May 26 #PHP
CodeIgniter常用知识点小结
May 26 #PHP
php数组函数array_walk用法示例
May 26 #PHP
PHP发送AT指令实例代码
May 26 #PHP
You might like
php基础学习之变量的使用
2011/06/09 PHP
解析php利用正则表达式解决采集内容排版的问题
2013/06/20 PHP
PHP利用imagick生成组合缩略图
2016/02/19 PHP
PHP实现根据数组某个键值大小进行排序的方法
2018/03/13 PHP
获取数组中最大最小值方法js代码(自写)
2013/08/12 Javascript
jquery实现的图片点击滚动效果
2014/04/29 Javascript
bootstrap table 服务器端分页例子分享
2015/02/10 Javascript
基于JavaScript实现简单的随机抽奖小程序
2016/01/05 Javascript
jquery ui dialog替代confirm实例分析
2016/01/25 Javascript
Vue入门之animate过渡动画效果
2018/04/08 Javascript
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
python中sets模块的用法实例
2014/09/30 Python
使用Python压缩和解压缩zip文件的教程
2015/05/06 Python
Python批量按比例缩小图片脚本分享
2015/05/21 Python
go和python变量赋值遇到的一个问题
2017/08/31 Python
python时间日期函数与利用pandas进行时间序列处理详解
2018/03/13 Python
wxPython实现窗口用图片做背景
2018/04/25 Python
Apache,wsgi,django 程序部署配置方法详解
2019/07/01 Python
使用python批量修改文件名的方法(视频合并时)
2020/03/24 Python
python boto和boto3操作bucket的示例
2020/10/30 Python
HTML5: Web 标准最巨大的飞跃
2008/10/17 HTML / CSS
html5实现canvas阴影效果示例
2014/05/07 HTML / CSS
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
美国领先的家居装饰和礼品商店:Kirkland’s
2017/01/30 全球购物
幼儿园家长会邀请函
2014/01/15 职场文书
你的创业计划书怎样才能打动风投
2014/02/06 职场文书
应聘英语教师求职信
2014/04/24 职场文书
工商企业管理应届生求职信
2014/05/04 职场文书
单位委托书格式范本
2014/09/29 职场文书
交通运输局四风问题对照检查材料思想汇报
2014/10/09 职场文书
党的群众路线教育实践活动心得体会(乡镇)
2014/11/03 职场文书
2014年民政工作总结
2014/11/26 职场文书
学生会辞职信
2015/03/02 职场文书
2016年企业安全生产月活动总结
2016/04/06 职场文书
写自招自荐信的绝招!
2019/04/19 职场文书