使用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 相关文章推荐
php 中include()与require()的对比
Oct 09 PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
Dec 25 PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
Sep 23 PHP
PHP内核探索:变量存储与类型使用说明
Jan 30 PHP
PHP批量生成静态HTML的简单原理和方法
Apr 20 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
Apr 25 PHP
ThinkPHP中的三大自动简介
Aug 22 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 PHP
php实现姓名根据首字母排序的类与方法(实例代码)
May 16 PHP
Linux下安装Memcached服务器和客户端与PHP使用示例
Apr 15 PHP
PHP+Redis开发的书签案例实战详解
Jul 09 PHP
PHP常用函数之格式化时间操作示例
Oct 21 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
php数组相加 array(“a”)+array(“b”)结果还是array(“a”)
2012/09/19 PHP
一个好用的PHP验证码类实例分享
2013/12/27 PHP
PHP实现多图片上传类实例
2014/07/26 PHP
php中最简单的字符串匹配算法
2014/12/16 PHP
微信access_token的获取开发示例
2015/04/16 PHP
Yii使用技巧大汇总
2015/12/29 PHP
利用PHP判断是手机移动端还是PC端访问的函数示例
2017/12/14 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
javascript 实现父窗口引用弹出窗口的值的脚本
2007/08/07 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
JavaScript中的类数组对象介绍
2014/12/30 Javascript
json实现前后台的相互传值详解
2015/01/05 Javascript
jQuery实现自动切换播放的经典滑动门效果
2015/09/12 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
分享bootstrap学习笔记心得(组件及其属性)
2017/01/11 Javascript
Django+Vue跨域环境配置详解
2018/07/06 Javascript
使用Vue CLI创建typescript项目的方法
2019/08/09 Javascript
js通过循环多张图片实现动画效果
2019/12/19 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
原生js实现拖拽移动与缩放效果
2020/08/24 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
python操作日期和时间的方法
2014/03/11 Python
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
Python读写Json涉及到中文的处理方法
2016/09/12 Python
PyTorch中常用的激活函数的方法示例
2019/08/20 Python
Python 批量读取文件中指定字符的实现
2020/03/06 Python
详解scrapy内置中间件的顺序
2020/09/28 Python
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
可以在一个PHP文件里面include另外一个PHP文件两次吗
2015/05/22 面试题
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
生产部厂长助理职位说明书
2014/03/03 职场文书
经典而简洁的婚礼主持词
2014/03/13 职场文书
学历公证委托书
2014/04/09 职场文书
python四种出行路线规划的实现
2021/06/23 Python
浅谈Redis的keys命令到底有多慢
2021/10/05 Redis
vue使用watch监听属性变化
2022/04/30 Vue.js