thinkphp 多文件上传

95 篇文章 0 订阅
62 篇文章 0 订阅

tpl


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>ThinkPHP示例:集成uploadify</title>
    <load type="css" href='/Public/uploadify/css/uploadify.css' />


    <load href="/Public/uploadify/scripts/jquery.uploadify.js" />


<script language="JavaScript">
var resideid={$resideid};


var img_id_upload=new Array();//初始化数组,存储已经上传的图片名
var i=0;//初始化数组下标
$(function() {
$('#file_upload').uploadify({
'auto'     : false,//关闭自动上传
'removeTimeout' : 1,//文件队列上传完成1秒后删除
'swf'      : '/Public/uploadify/scripts/uploadify.swf',
'uploader' : '__GROUP__/PictureGallery/uploadify',
'method'   : 'post',//方法,服务端可以用$_POST数组获取数据
'formData':{'resideid':resideid,'residemenu':'131'},//在服务端使用$_POST['id']获取该数据,服务端代码上传成功后将在目录生成一个6.txt的文件
'buttonText' : '选择图片',//设置按钮文本
'multi'    : true,//允许同时上传多张图片
'uploadLimit' : 10,//一次最多只允许上传10张图片
'fileTypeDesc' : 'Image Files',//只允许上传图像
'fileTypeExts' : '*.gif; *.jpg; *.png',//限制允许上传的图片后缀
'fileSizeLimit' : '200KB',//限制上传的图片不得超过200KB
//每次成功上传后执行的回调函数,从服务端返回数据到前端
'onUploadSuccess' : function(file, data, response) { //每次成功上传后执行的回调函数,从服务端返回数据到前端
$('#image').append('<div>这里是图片:<img width="100px" height="100px" src="__PUBLIC__/upload/'+data+'"  height=80 width=80 /></div>');
img_id_upload[i]=data;
i++;
},
//上传队列全部完成后执行的回调函数
'onQueueComplete' : function(queueData) {
if(img_id_upload.length>0)
alert('成功上传的文件有:'+encodeURIComponent(img_id_upload));
}
});
});
</script>


</head>
<body>
    <div class="main">
        <h2>ThinkPHP示例之:集成uploadify{$resideid}</h2>
<input type="file" name="file_upload" id="file_upload" />
<p>


<input type="button" name="Submit" value="上传图片" onClick="javascript:$('#file_upload').uploadify('upload','*');">
上传</a>&nbsp;
<a href="javascript:$('#file_upload').uploadify('cancel','*')">重置上传队列</a></p>
    </div>
 <p>控制器源代码:</p>   
 <div id="image"></div><br />
</body>
</html>

action

<?php

// 后台用户模块
class PictureGalleryAction extends CommonAction {




function _filter(&$map){



}




function _before_index(){
     
         $this->assign('resideid',$_REQUEST["id"]);
}




//上传图片回调
public function uploadify(){

$targetFolder = './Public/upload/'; //设置上传目录
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name'];

$extend = explode("." , $_FILES['Filedata']['name']);
$va=count($extend)-1;

$path = time().mt_rand(10000,99999).".".$extend[$va];
$targetFile =$targetFolder. '/' . $path; //$_FILES['Filedata']['name'];//上传后的图片路径
// Validate the file type
$fileTypes = array('jpg','jpeg','gif','png'); //允许的文件后缀
$fileParts = pathinfo($_FILES['Filedata']['name']);

if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($tempFile,iconv("UTF-8","gb2312", $targetFile));
//file_put_contents($_POST['residemenu'].".txt","上传成功了!");
echo $path;//上传成功后返回给前端的数据
} else {
echo "不支持的文件类型";
}

}


}
}
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值