基于thinkphp的uploadify上传图功能

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上传图功能

时间: 2024-12-30 13:03:19

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

thinkphp 登录后uploadify上传flash上传时出现302

uploadify上传后端加了用户登陆验证后某些浏览器会出现 http error 302 代码测试版本thinkphp3.2 前端代码: <script type="text/javascript"> <?php $timestamp = time();?> $(function() { $('#images').uploadify({ 'formData'     : { '{:session_name()}':'{:session_id()}', 'tim

3Python全栈之路系列之基于socket实现文件上传

Python全栈之路系列之基于socket实现文件上传 发布时间:2017年3月16日 00:04 浏览(106) 评论(0) 分类:Python 前言 此处没有前言 粘包 在实现发送文件功能之前我们先来理解下粘包的问题,下面有两张图,我觉得很清晰的就可以理解到了. 正常情况下发送文件 第一步: 客户端把获取到的文件总大小(size=65426)先放到缓冲区,然后发送给服务端 第二步: 此时客户端接收到的文件总大小就是65426 粘包的问题下发送文件 第一步: 客户端把获取到的文件总大小(siz

SpringMVC经典系列-12基于SpringMVC的文件上传---【LinusZhu】

注意:此文章是个人原创,希望有转载需要的朋友们标明文章出处,如果各位朋友们觉得写的还好,就给个赞哈,你的鼓励是我创作的最大动力,LinusZhu在此表示十分感谢,当然文章中如有纰漏,请联系[email protected],敬请朋友们斧正,谢谢. 不知不觉已经把Spring的基础部分讲解完了,所讲述的都是在项目中经常用到的东西,是经得住考验的,接下来的部分主要是要讲述使用SpringMVC进行的文件上传.处理Ajax请求.自定义拦截器功能的实现,不多说了,首先讲解文件上传部分,开始--     

web实现QQ头像上传截取功能

由于最近一段时间比较忙,发现好久没写博客了,给大家分享下最近搞的logo上传截取功能.在实现这个功能之前找了一些jq的插件,最后选定了cropper在github中可以找到. 具体的思路是1:选择上传的图片,在change事件中用form.jquery.js中的formajax异步提交表单,保存上传的图片 2:绑定cooper事件,对图片进行选取. 3:得到选中区域的坐标,对图片进行截取保存. 其中的难点是ie的兼容性问题,由于本人也不是很好,就不献丑了下面给大家附上代码 页面中的html <d

MVC3+jquery Uploadify 上传文件

最近做项目用到了上传图片的功能,以前也写过这类代码,不过都是用传统的file标签,今天整理一个好用的插件Uploadify..都做了一些注释,一看便知. 可以去官网下载最新的:Uploadify下载地址:http://www.uploadify.com/download/ 1.引用文件 <link href="@Url.Content("~/Scripts/uploadify/uploadify.css")" rel="stylesheet"

上传文件功能

最近项目上的一个上传文件功能,贴出来大家一起分享下,项目是MVC+EF+LigerUI 来做的 <script type="text/javascript" src="/Content/uploadify/jquery.uploadify.min.js"></script><link href="/Content/uploadify/uploadify.css" type="text/css" r

[Plugin] JQuery.uploadify上传文件插件的使用详解For ASP.NET

URL:http://www.cnblogs.com/xiaopin/archive/2010/01/21/1653523.html 今天下午整理文件上传的例子,感觉收集到的例子都很不人性话,后来找到一个还可以的,本来想改成类似于腾讯QQ相册那种方式,仔细看了一下是Flash的, 而且那个极速上传插件也不知道用什么做的?问了一下,说是什么cgi. 搞得一头雾水! 后来朋友推荐了一个这个叫uploadify的上传插件,似乎挺好,就到官方下了个示例运行,感觉挺好,自己再稍加美化一下就OK 了..!

(网上看的)asp.net使用uploadify上传出现的IO Error问题

解决方法: 1.uploadify控件的自定义size必须调整大小,即属性:sizeLimit:'300000000000' //根据自己需要 2.asp.net中webconfig用记事本打开,插在<system.web></system.web>之间, “<httpRuntime maxRequestLength="2097151" executionTimeout="50000" />” maxRequestLength大小

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

对于Uploadify文件上传之前已经讲过一次(文件上传~Uploadify上传控件),只不过没有涉及到多文件的上传,这回主要说一下多个文件的上传,首先,我们要清楚一个概念,多文件上传前端Uploadify是通过轮训的方式去调用我们的后台upload程序的,所以,对于多文件上传来说,也没什么稀奇的. 下面是文件上传后的缩略图如下 列表的组装使用JS模板,这样对于复杂的HTML结构来说,可以减少拼写错误的出现,关闭是将LI元素从UI元素移除,最后提交时,从UI里检查LI元素,然后对它进行组装,并进