php Action server端

<?php





/*

 * To change this template, choose Tools | Templates

 * and open the template in the editor.

 */





/**

 * Description of UploadAction

 *

 * @author hxwj

 */

class UploadAction extends CommonAction{

    public function _initialize(){

        //此处为解决Uploadify在火狐下出现http 302错误 又一次设置SESSION

        $session_name = session_name();

        if (isset($_POST[$session_name])) {

            session_id($_POST[$session_name]);

            session_start();

        }

    }

    public function upload(){

                import("ORG.Net.UploadFile");

                //导入上传类

                if($_FILES){

                    $upload = new UploadFile();

                    //设置上传文件大小

                    $upload->maxSize = 204800;

                    //设置上传文件类型

                    $upload->allowExts  = array('jpg', 'gif', 'png', 'jpeg');

                    //设置附件上传文件夹

                    $upload->thumb = true;

                    $upload->thumbPrefix = 'm_';  //生产2张缩略图

                    //设置缩略图最大宽度

                    $upload->thumbMaxWidth = '400,100';

                    //设置缩略图最大高度

                    $upload->thumbMaxHeight = '400,100';

                    $upload->savePath = './Uploads/shunongjj/';

                    //设置须要生成缩略图,仅对图像文件有效





                    // 设置引用图片类库包路径

                    //删除原图

                    //$upload->thumbRemoveOrigin = true;

                    if (!$upload->upload()) {

                        //捕获上传异常

                        //$this->error($upload->getErrorMsg());

                        $data['status']='0';

                        $this->ajaxReturn($data,'json');

                    } else {

                        //取得成功上传的文件信息

                        $info =  $upload->getUploadFileInfo();

                        $imgpath = '/Uploads/shunongjj/'.$info[0]['savename'];

                        $data['picurl'] = $imgpath;

                        $data['status']='100';

                        $this->ajaxReturn($data,'json');

                    }

                }

    }

    /*

     * 无缩略图

     */

     public function upload_wsl(){

                import("ORG.Net.UploadFile");

                //导入上传类

                if($_FILES){

                    $upload = new UploadFile();

                    //设置上传文件大小

                    $upload->maxSize = 204800;

                    //设置上传文件类型

                    $upload->allowExts  = array('jpg', 'gif', 'png', 'jpeg');

                    //设置附件上传文件夹

                    $upload->savePath = './Uploads/shunongjj/';

                    //设置须要生成缩略图,仅对图像文件有效





                    // 设置引用图片类库包路径

                    //删除原图

                    //$upload->thumbRemoveOrigin = true;

                    if (!$upload->upload()) {

                        //捕获上传异常

                       //$this->error($upload->getErrorMsg());

                        $data['status']='0';

                        return false;

                       //  $this->ajaxReturn("","上传失败","");

                    } else {

                        //取得成功上传的文件信息

                        $info =  $upload->getUploadFileInfo();

                        return $imgpath = '/Uploads/shunongjj/'.$info[0]['savename'];

                    }

                }

    }

    /*

     * 公司轮换首页图片

     */

     public function upload_index(){

                import("ORG.Net.UploadFile");

                //导入上传类

                if($_FILES){

                    $upload = new UploadFile();

                    //设置上传文件大小

                    $upload->maxSize = 204800;

                    //设置上传文件类型

                    $upload->allowExts  = array('jpg', 'gif', 'png', 'jpeg');

                    //设置附件上传文件夹

                    $upload->savePath = './Uploads/shunongjj/';

                    //设置须要生成缩略图,仅对图像文件有效





                    // 设置引用图片类库包路径

                    //删除原图

                    //$upload->thumbRemoveOrigin = true;

                     if (!$upload->upload()) {

                        //捕获上传异常

                        //$this->error($upload->getErrorMsg());

                        $data['status']='0';

                        $this->ajaxReturn($data,'json');

                    } else {

                        //取得成功上传的文件信息

                        $info =  $upload->getUploadFileInfo();

                        $imgpath = '/Uploads/shunongjj/'.$info[0]['savename'];

                        $data['picurl'] = $imgpath;

                        $data['status']='100';

                        $this->ajaxReturn($data,'json');

                    }

                }

    }

}





?>

模板  tpl  端

html

<input  id="file_upload" name="file_upload" type="file" />(图片上传规范:176*107)

js

<script src="__PUBLIC__/uploadify/jquery.uploadify.min.js" type="text/javascript"></script>

<link rel="stylesheet" type="text/css" href="__PUBLIC__/uploadify/uploadify.css"/>

/**

                 * uploadify插件上产图片

                 */

                $("#file_upload").uploadify({

                    //指定swf文件

                    'swf': '__PUBLIC__/uploadify/uploadify.swf',

                    //后台处理的页面

                    'uploader': '{:U("Upload/upload")}',

                    //button显示的文字

                    'buttonText': '上传图片',

                    //显示的高度和宽度,默认 height 30;width 120

                    //'height': 15,

                    //'width': 80,

                    //上传文件的类型  默觉得全部文件    'All Files'  ;  '*.*'

                    //在浏览窗体底部的文件类型下拉菜单中显示的文本

                    'fileTypeDesc': 'Image Files',

                    //同意上传的文件后缀

                    'fileTypeExts': '*.gif; *.jpg; *.png',

                    //发送给后台的其它參数通过formData指定

                    //'formData': { 'someKey': 'someValue', 'someOtherKey': 1 },

                    //上传文件页面中,你想要用来作为文件队列的元素的id, 默觉得false  自己主动生成,  不带#

                    //'queueID': 'fileQueue',

                    //选择文件后自己主动上传

                    'auto': true,

                    //设置为true将同意多文件上传

                    'onUploadSuccess': function(file, data, response){

    var data = $.parseJSON(data);

                       if(data.status==100) {

                         $("#img_show").html("<img src='"+data.picurl+"'/>");

                         $("#img_url").val(data.picurl);

                       }else{

                         alert("上传失败,可能是您上传的图片大小不符合规范,请重试!");

                       }

    }

               });

            });

基于thinkphp的uploadify上传图功能的更多相关文章

  1. MVC 4 结合jquery.uploadify 上传实例

    前言:由于今天公司源代码服务瘫痪,没法编写代码,利用这个有限的时间,做了一个小小的 基于MVC的图片上传demo,貌似近些年来MVC十分火爆,相关的demo也数不胜数,小弟就在这里打着MVC的旗子,狐 ...

  2. uploadify 上传文件插件

    今天在项目中要用到文件上传功能时,想借助Jquery方式来实现,于是想到用uploadify插件来实现.不经意间在网上看到了一遍关于这个插件的用法,写的很好.在这里就分享给大家,希望对大家有帮助.以下 ...

  3. 使用uploadify上传控件无法进入后台问题分析

    分别在.net mvc 和java struts2中使用到 uploadify上传 文件,遇到同样的问题,选中文件上传后,文件无法上传,打上断点后发现没有进入后台. 逐步断点发现 项目共同点是加入了 ...

  4. 【javascript】html5中使用canvas编写头像上传截取功能

    [javascript]html5中使用canvas编写头像上传截取功能 本人对canvas很是喜欢,于是想仿照新浪微博头像上传功能(前端使用canvas) 本程序目前在谷歌浏览器和火狐浏览器测试可用 ...

  5. JavaWeb实现文件上传下载功能实例解析

    转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web应用系统开发中,文件上传和下载功能是非常常用的功能 ...

  6. 文件上传~Uploadify上传控件~续(多文件上传)

    对于Uploadify文件上传之前已经讲过一次(文件上传~Uploadify上传控件),只不过没有涉及到多文件的上传,这回主要说一下多个文件的上传,首先,我们要清楚一个概念,多文件上传前端Upload ...

  7. Thinkphp拖拽上传文件-使用webuploader插件(自己改动了一些地方)——分片上传

    html页面: <!DOCTYPE html> <html class="js cssanimations"> <head> <meta  ...

  8. Python基于Python实现批量上传文件或目录到不同的Linux服务器

    基于Python实现批量上传文件或目录到不同的Linux服务器   by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/rootpath_fo ...

  9. [转]kindeditor隐藏上传图片框网络图片或本地上传的功能

    原文地址:http://www.lingchenliang.com/post/154.html kindeditor富文本编辑器点击上传图片按钮,在弹出的窗口中去掉上传网络图片的功能,只留下本地上传, ...

随机推荐

  1. ReentrantLock(重入锁)以及公平性

    ReentrantLock(重入锁)以及公平性 标签(空格分隔): java NIO 如果在绝对时间上,先对锁进行获取的请求一定被先满足,那么这个锁是公平的,反之,是不公平的,也就是说等待时间最长的线 ...

  2. Oracle EBS-SQL (AR-2):检查应收收款核销额

    SELECT cust.customer_number, cust.customer_name, cash.receipt_number,            gcc.segment1 || '.' ...

  3. iOS6和iOS7代码的适配(1)

    苹果的iOS7推出后,对于所有的应用来说都提出了一个天然的需求--适配不同版本的SDK.目前来说,用iOS6的SDK生成的应用,可以在iOS7的系统上跑,UI上也保持了原来的风格样式,这是苹果做的向下 ...

  4. VC2008如何生成及使用DLL(完整版)

    生成.使用DLL看起来简单,但做起来才发现还是有一些地方需要注意的. 1. 打开VS2008,新建一个VC工程,选择Win32类型,Win32项目: 2. 应用程序类型选择DLL,附加选项选择到处符号 ...

  5. MySQL 5.7 重置root默认密码

    http://www.cnblogs.com/jym-sunshine/p/5314101.html mysql5.7.11修改root默认密码   知道 MySQL 出了5.7了,并且网上说性能提高 ...

  6. Hibernate学习

    一.Hibernate与触发器协同工作 Hibernate与数据库中的触发器协同工作,会造成两类问题 ----触发器使Session的缓存中的持久化对象与数据库中对应的数据不一致:触发器运行在数据库中 ...

  7. 在Java SE中使用Hibernate处理数据

    如今,Hibernate正在迅速成为非常流行的(如果不是最流行的)J2EE O/R映射程序/数据集成框架.它为开发人员提供了处理企业中的关系数据库的整洁.简明且强大的工具.但如果外部需要访问这些已被包 ...

  8. 关于Google指令(别提baidu)

    关于google指令 关于google指令 google为我们准备好了的"指令"(directive),可以最大限度帮助我们完成每一次搜索.这些指令其实就是一个个关键字,能让我们从 ...

  9. 常用笔记: JS实现VBS当中的Replace

    <script> //JS实现VBS当中的Replace,替换全部.方法名大写,区别于原方法,与VBS相类似. String.prototype.Replace = function(ol ...

  10. (iOS)关于GCD死锁的问题

    - (void)viewDidLoad { [super viewDidLoad]; dispatch_sync(dispatch_get_main_queue(), ^{NSLog("); ...