基于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上传图功能的更多相关文章
- MVC 4 结合jquery.uploadify 上传实例
前言:由于今天公司源代码服务瘫痪,没法编写代码,利用这个有限的时间,做了一个小小的 基于MVC的图片上传demo,貌似近些年来MVC十分火爆,相关的demo也数不胜数,小弟就在这里打着MVC的旗子,狐 ...
- uploadify 上传文件插件
今天在项目中要用到文件上传功能时,想借助Jquery方式来实现,于是想到用uploadify插件来实现.不经意间在网上看到了一遍关于这个插件的用法,写的很好.在这里就分享给大家,希望对大家有帮助.以下 ...
- 使用uploadify上传控件无法进入后台问题分析
分别在.net mvc 和java struts2中使用到 uploadify上传 文件,遇到同样的问题,选中文件上传后,文件无法上传,打上断点后发现没有进入后台. 逐步断点发现 项目共同点是加入了 ...
- 【javascript】html5中使用canvas编写头像上传截取功能
[javascript]html5中使用canvas编写头像上传截取功能 本人对canvas很是喜欢,于是想仿照新浪微博头像上传功能(前端使用canvas) 本程序目前在谷歌浏览器和火狐浏览器测试可用 ...
- JavaWeb实现文件上传下载功能实例解析
转:http://www.cnblogs.com/xdp-gacl/p/4200090.html JavaWeb实现文件上传下载功能实例解析 在Web应用系统开发中,文件上传和下载功能是非常常用的功能 ...
- 文件上传~Uploadify上传控件~续(多文件上传)
对于Uploadify文件上传之前已经讲过一次(文件上传~Uploadify上传控件),只不过没有涉及到多文件的上传,这回主要说一下多个文件的上传,首先,我们要清楚一个概念,多文件上传前端Upload ...
- Thinkphp拖拽上传文件-使用webuploader插件(自己改动了一些地方)——分片上传
html页面: <!DOCTYPE html> <html class="js cssanimations"> <head> <meta ...
- Python基于Python实现批量上传文件或目录到不同的Linux服务器
基于Python实现批量上传文件或目录到不同的Linux服务器 by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/rootpath_fo ...
- [转]kindeditor隐藏上传图片框网络图片或本地上传的功能
原文地址:http://www.lingchenliang.com/post/154.html kindeditor富文本编辑器点击上传图片按钮,在弹出的窗口中去掉上传网络图片的功能,只留下本地上传, ...
随机推荐
- java面向对象之 多态 Polymorphism
多态(Polymorphism):用我们通俗易懂的话来说就是子类就是父类(猫是动物,学生也是人),因此多态的意思就是:父类型的引用可以指向子类的对象. 1.多态的含义:一种类型,呈现出多种状态 主要讨 ...
- windows8设置环境变量
win8,win8.1如何配置java的环境变量 工具/原料 win8,win8.1 方法/步骤 在你的计算机上右击,选择其中的属性就可以了.如下图所示. 接下来,作出如下图所示的选择. 这个 ...
- J2SE知识点摘记(十二)
1. File类 下面的构造方法可以用来生成File对象 File(String directoryPath) geName()用于返回文件名,getParent()返回父目录名,exist ...
- Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags();singleTask的两种启动方式。
原文:Android Activity 的四种启动模式 lunchMode 和 Intent.setFlags();singleTask的两种启动方式. Android Activity 的四种启动模 ...
- 一个大小为N的数组,里面是N个整数,怎样去除重复的数
题目:一个大小为N的数组,里面是N个整数,怎样去除重复的数字: 要求时间复杂度为O(n),空间复杂度为O(1). 需要除掉重复的整数的数组,注意这里我没有处理负数情况,其实负数情况只要先用0快排分一下 ...
- git Feature分支
Feature分支 软件开发中,总有无穷无尽的新的功能要不断添加进来. 添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在 ...
- Debug程序无法运行解决
说明:文章内容部分参考网络上的解决思路. 在没有安装Microsoft Visual Studio的系统上,Debug版本无法正常运行.这是由于缺少vs运行时库引起的. 以vs2005为例.开发机用v ...
- 写个脚本列出neutron的ovs的topology。
运行结果如下: $ ./nova-ifinfo a7026868-407c-4c54-bb8f-a68623d7e13fvm name is: instance-00000035 # 查找VM ...
- Baskets of Gold Coins
Baskets of Gold Coins Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 转载 C# 序列化与反序列化意义详解
C# 序列化与反序列化意义详解 总结: ①序列化基本是指把一个对象保存到文件或流中,比如可以把文件序列化以保存到Xml中,或一个磁盘文件中②序列化以某种存储形式使自定义对象持久化: ③将对象从一个地方 ...