skymvc实现文件上传的具体代码,供大家参考,具体内容如下
本文实例为大家分享了1.代码upload.ctrl.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
<?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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
<!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代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
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程序设计有所帮助。