使用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中HTTP方式下的Gzip压缩传输方法举偶
Feb 15 PHP
PHP 日期加减的类,很不错
Oct 10 PHP
PHP 函数call_user_func和call_user_func_array用法详解
Mar 02 PHP
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
Nov 11 PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 PHP
php去除二维数组的重复项方法
Nov 03 PHP
PHP 5.6.11中CURL模块问题的解决方法
Aug 08 PHP
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
Nov 12 PHP
php 处理png图片白色背景色改为透明色的实例代码
Dec 10 PHP
Yii2.0实现的批量更新及批量插入功能示例
Jan 29 PHP
Laravel框架Blade模板简介及模板继承用法分析
Dec 03 PHP
Laravel 微信小程序后端实现用户登录的示例代码
Nov 26 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
用Flash图形化数据(一)
2006/10/09 PHP
新手学PHP之数据库操作详解及乱码解决!
2007/01/02 PHP
php编程实现获取excel文档内容的代码实例
2011/06/28 PHP
Prototype使用指南之selector.js
2007/01/10 Javascript
jQuery 事件的命名空间简单了解
2013/11/22 Javascript
javascript回车完美实现tab切换功能
2014/03/13 Javascript
JavaScript AJAX之惰性载入函数
2014/08/27 Javascript
谈一谈js中的执行环境及作用域
2016/03/30 Javascript
JS判断指定dom元素是否在屏幕内的方法实例
2017/01/23 Javascript
javascript作用域链与执行环境详解
2017/03/25 Javascript
Easyui ueditor 整合解决不能编辑的问题(推荐)
2017/06/25 Javascript
JS实现对json对象排序并删除id相同项功能示例
2018/04/18 Javascript
vue内置组件transition简单原理图文详解(小结)
2018/07/12 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
2018/10/14 Javascript
微信小程序实现banner图轮播效果
2020/06/28 Javascript
jQuery实现tab栏切换效果
2020/12/22 jQuery
python分析nignx访问日志脚本分享
2015/02/26 Python
Python运算符重载用法实例分析
2015/06/01 Python
Python基于matplotlib画箱体图检验异常值操作示例【附xls数据文件下载】
2019/01/07 Python
python数字类型math库原理解析
2020/03/02 Python
解决更改AUTH_USER_MODEL后出现的问题
2020/05/14 Python
keras读取h5文件load_weights、load代码操作
2020/06/12 Python
Python2与Python3关于字符串编码处理的差别总结
2020/09/07 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
高中的自我鉴定
2013/12/16 职场文书
八年级生物教学反思
2014/01/22 职场文书
加拿大留学自荐信
2014/01/28 职场文书
运动会通讯稿150字
2014/02/15 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
留学推荐信英文范文
2015/03/26 职场文书
新手开公司创业注意事项有哪些?
2019/07/29 职场文书
SQLServer2008提示评估期已过解决方案
2021/04/12 SQL Server
python3中apply函数和lambda函数的使用详解
2022/02/28 Python
基于Redission的分布式锁实战
2022/08/14 Redis