使用ThinkPHP+Uploadify实现图片上传功能


Posted in PHP onJune 26, 2014

首先,将下载的Uploadify压缩包解压放到公共文件夹内。实现代码如下:

前台html部分:

<script src="/uploadify/jquery.min.js" data-ke-src="/Public/uploadify/jquery.min.js" type="text/javascript">
<script src="/uploadify/jquery.uploadify.min.js" data-ke-src="/Public/uploadify/jquery.uploadify.min.js" type="text/javascript">
<link rel="stylesheet" type="text/css" href="/uploadify/uploadify.css" data-ke-src="/Public/uploadify/uploadify.css">
<script type="text/javascript">
var img_id_upload=new Array();//初始化数组,存储已经上传的图片名
var i=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' : 'Image Files',//只允许上传图像
 'fileTypeExts' : '*.gif; *.jpg; *.png',//限制允许上传的图片后缀
 'fileSizeLimit' : '2000KB',//限制上传的图片大小
 'onUploadSuccess' : function(file, data, response) { //每次成功上传后执行的回调函数,从服务端返回数据到前端
$('#image').append('<div style="float:left;margin:2px 0 0 2px"><img width="100px" height="100px" src="/uploads/'+data+'" data-ke-src="/uploads/'+data+'" height=80 width=80 />');
 img_id_upload[i]=data;
 i++;
 }
 });
});
</script>
<input type="file" name="file_upload" id="file_upload" />
<p><a href="javascript:$('#file_upload').uploadify('upload','');" data-ke-src="javascript:$('#file_upload').uploadify('upload','');">上传</a>
</p>
<br />
<div id="image" class="image"><br />

action执行代码部分:

public function uploadify()
 {
 $ph=M('Upload');
 import('ORG.Net.UploadFile');
 $upload = new UploadFile();// 实例化上传类
 $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框架的PHP程序设计有所帮助。

PHP 相关文章推荐
探讨Hessian在PHP中的使用分析
Jun 13 PHP
PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码
Nov 07 PHP
PHP使用SOAP调用.net的WebService数据
Nov 12 PHP
php实现把数组按指定的个数分隔
Feb 17 PHP
PHP判断远程图片或文件是否存在的实现代码
Feb 20 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
PHP函数getenv简介和使用实例
May 12 PHP
CodeIgniter删除和设置Cookie的方法
Apr 07 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
Yii的Srbac插件用法详解
Jul 14 PHP
PHP获取当前执行php文件名的代码
Mar 02 PHP
PHP观察者模式定义与用法实例分析
Mar 22 PHP
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
Jun 26 #PHP
ThinkPHP实现将本地文件打包成zip下载
Jun 26 #PHP
ThinkPHP实现一键清除缓存方法
Jun 26 #PHP
destoon实现商铺管理主页设置增加新菜单的方法
Jun 26 #PHP
destoon在360浏览器下出现用户被强行注销的解决方法
Jun 26 #PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
Jun 26 #PHP
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
Jun 26 #PHP
You might like
法兰绒滤网冲泡
2021/03/03 冲泡冲煮
source.php查看源文件
2006/12/09 PHP
php curl获取网页内容(IPV6下超时)的解决办法
2013/07/16 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
JavaScript 判断浏览器类型及版本
2009/02/21 Javascript
js操作二级联动实现代码
2010/07/27 Javascript
jquery json 实例代码
2010/12/02 Javascript
写自已的js类库需要的核心代码
2012/07/16 Javascript
js动态改变select选择变更option的index值示例
2014/07/10 Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
2015/06/03 Javascript
如何解决谷歌浏览器下jquery无法获取图片的尺寸
2015/09/10 Javascript
javascript学习小结之prototype
2015/12/03 Javascript
JS与jQ读取xml文件的方法
2015/12/08 Javascript
JavaScript操作select元素和option的实例代码
2016/01/29 Javascript
jQuery包裹节点用法完整示例
2016/09/13 Javascript
AngularJS过滤器filter用法分析
2016/12/11 Javascript
Jquery ajax书写方法代码实例解析
2020/06/12 jQuery
关于javascript中的promise的用法和注意事项(推荐)
2021/01/15 Javascript
[48:35]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 TNC vs Optic
2018/04/03 DOTA
Python读取一个目录下所有目录和文件的方法
2016/07/15 Python
python实现按任意键继续执行程序
2016/12/30 Python
Python如何将图像音视频等资源文件隐藏在代码中(小技巧)
2020/02/16 Python
Python类及获取对象属性方法解析
2020/06/15 Python
基于HTML5的齿轮动画特效
2016/02/29 HTML / CSS
美国知名的旅游网站:OneTravel
2018/10/09 全球购物
什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
2012/09/06 面试题
工厂搬迁方案
2014/05/11 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
医德医风个人工作总结2014
2014/11/14 职场文书
升学宴学生答谢词
2015/01/05 职场文书
可可西里观后感
2015/06/08 职场文书
施工现场安全管理制度
2015/08/05 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
源码安装apache脚本部署过程详解
2022/09/23 Servers