使用ThinkPHP+Uploadify实现图片上传功能
首先,将下载的Uploadify压缩包解压放到公共文件夹内。实现代码如下:
前台html部分:
<scriptsrc="/uploadify/jquery.min.js"data-ke-src="/Public/uploadify/jquery.min.js"type="text/javascript">
<scriptsrc="/uploadify/jquery.uploadify.min.js"data-ke-src="/Public/uploadify/jquery.uploadify.min.js"type="text/javascript">
<linkrel="stylesheet"type="text/css"href="/uploadify/uploadify.css"data-ke-src="/Public/uploadify/uploadify.css">
<scripttype="text/javascript">
varimg_id_upload=newArray();//初始化数组,存储已经上传的图片名
vari=0;//初始化数组下标
$(function(){
$('#file_upload').uploadify({
'auto':false,//关闭自动上传
'removeTimeout':600,//文件队列上传完成1秒后删除
'swf':'/Public/uploadify/uploadify.swf',
'uploader':'/_URL_/Article/uploadify',
'method':'post',//方法,服务端可以用$_POST数组获取数据
'buttonText':'选择图片',//设置按钮文本
'multi':true,//允许同时上传多张图片
'uploadLimit':8,//一次最多只允许上传10张图片
'fileTypeDesc':'ImageFiles',//只允许上传图像
'fileTypeExts':'*.gif;*.jpg;*.png',//限制允许上传的图片后缀
'fileSizeLimit':'2000KB',//限制上传的图片大小
'onUploadSuccess':function(file,data,response){//每次成功上传后执行的回调函数,从服务端返回数据到前端
$('#image').append('<divstyle="float:left;margin:2px002px"><imgwidth="100px"height="100px"src="/uploads/'+data+'"data-ke-src="/uploads/'+data+'"height=80width=80/>');
img_id_upload[i]=data;
i++;
}
});
});
</script>
<inputtype="file"name="file_upload"id="file_upload"/>
<p><ahref="javascript:$('#file_upload').uploadify('upload','');"data-ke-src="javascript:$('#file_upload').uploadify('upload','');">上传</a>
</p>
<br/>
<divid="image"class="image"><br/>
action执行代码部分:
publicfunctionuploadify()
{
$ph=M('Upload');
import('ORG.Net.UploadFile');
$upload=newUploadFile();//实例化上传类
$upload->maxSize=93145728;//设置附件上传大小
$upload->saveRule=rand(1,9999);
$upload->allowExts=array('jpg','gif','png','jpeg','flv','avi','mov');//设置附件上传类型
$upload->savePath='./Uploads/';//设置附件上传目录
if(!$upload->upload())
{//上传错误提示错误信息
$this->error($upload->getErrorMsg());
}else{//上传成功获取上传文件信息
$info=$upload->getUploadFileInfo();
}
for($i=0;$i<count($info);$i++)
{
$data['name']=$info[$i]['savename'];
$data['size']=$info[$i]['size'];
$data['type']=$info[$i]['extension'];
echo$info[$i]['savename'];
$rs=$ph->add($data);
}
/*if($rs)
{
$this->success("成功");
}else
{
$this->error("失败");
}*/
}
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。