Thinkphp+smarty+uploadify实现无刷新上传


Posted in PHP onJuly 30, 2015

本文实例讲述了Thinkphp+smarty+uploadify实现无刷新上传的方法。分享给大家供大家参考。具体如下:

模板文件代码:

<!DOCTYPE html>
<html lang="cn">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <link href="<{$smarty.const.PUBLIC_PATH}>/Uploadify/uploadify.css" rel="stylesheet" type="text/css" />
  <script src="<{$smarty.const.PUBLIC_PATH}>/Uploadify/jquery.js" type="text/javascript"></script>
  <script src="<{$smarty.const.PUBLIC_PATH}>/Uploadify/jquery.uploadify.min.js" type="text/javascript"></script>
 </head>
 <script type="text/javascript">
  $(function() {
   $("#file_upload").uploadify({
    //指定swf文件
    'swf': '<{$smarty.const.PUBLIC_PATH}>/Uploadify/uploadify.swf',
    //后台处理的页面
    'uploader': "<{U('home/Login/Uploads','',false)}>",
    //按钮显示的文字
    'buttonText': '上传图片',
     //显示的高度和宽度
    "height" : 30,
    'fileTypeDesc': 'Image Files',
    //允许上传的文件后缀
    'fileTypeExts': '*.gif; *.jpg; *.png',
    //发送给后台的其他参数通过formData指定
    //'formData': { 'someKey': 'someValue', 'someOtherKey': 1 },
    "method" : 'post',//方法,服务端可以用$_POST数组获取数据
    'removeTimeout'  : 1,
    "onUploadSuccess" : uploadPicture
  });
  //可以根据自己的要求来做相应处理
  function uploadPicture(file, data){
    var data = eval('(' + data + ')');
   if(data.errorcode){
    alert(data.errormsg); 
   } else {
    alert(data.errormsg);
   }
  } 
 });
</script>
 <body>
  <input type="file" name="file_upload" id="file_upload" />
 </body>
</html>

控制器代码:

public function uploads(){
  $arr = array( "errorcode"=>"1","errormsg"=>"上传成功!");
  $model = M('applicant');
  if (!empty($_FILES)) {
    //图片上传设置
    $config = array( 
    'maxSize' => 1000000, 
    'rootPath' => 'Public',
    'savePath' => '/Uploads/', 
    'saveName' => array('uniqid',''), 
    'exts'  => array('jpg', 'gif', 'png', 'jpeg'), 
    'autoSub' => false, 
    'subName' => array('date','Ymd'),
   );
   $upload = new \Think\Upload($config);// 实例化上传类
  $info = $upload->upload();
   if($info){
    $arr['errorcode'] = "0";
   } else {
    $arr["errorcode"] = "1";
    $arr["errormsg"] = $upload->getError();
   }
   /* 返回JSON数据 */
   $this->ajaxReturn($arr);
  }
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP If Else(elsefi) 语句
Apr 07 PHP
更改localhost为其他名字的方法
Feb 10 PHP
通过dbi使用perl连接mysql数据库的方法
Apr 16 PHP
ThinkPHP3.1的Widget新用法
Jun 19 PHP
30个php操作redis常用方法代码例子
Jul 05 PHP
PHP中imagick函数的中文解释
Jan 21 PHP
php curl登陆qq后获取用户信息时证书错误
Feb 03 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
PHP获取日期对应星期、一周日期、星期开始与结束日期的方法
Jun 22 PHP
PHP二维索引数组的遍历实例分析【2种方式】
Jun 24 PHP
php实现图片压缩处理
Sep 09 PHP
PHP7 字符串处理机制修改
Mar 09 PHP
PHP实现批量修改文件后缀名的方法
Jul 30 #PHP
PHP实现抓取迅雷VIP账号的方法
Jul 30 #PHP
PHP定时执行任务实现方法详解(Timer)
Jul 30 #PHP
php实现curl模拟ftp上传的方法
Jul 29 #PHP
php实现复制移动文件的方法
Jul 29 #PHP
详解PHP中的Traits
Jul 29 #PHP
php实现在多维数组中查找特定value的方法
Jul 29 #PHP
You might like
PHP 程序员也要学会使用“异常”
2009/06/16 PHP
比较全面的PHP数组的使用方法小结
2010/09/23 PHP
PHP下使用CURL方式POST数据至API接口的代码
2013/02/14 PHP
thinkphp实现面包屑导航(当前位置)例子分享
2014/05/10 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
2017/12/31 PHP
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
js获取页面description的方法
2015/05/21 Javascript
JavaScript实现选择框按比例拖拉缩放的方法
2015/08/04 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
React如何避免重渲染
2018/04/10 Javascript
elementUI select组件默认选中效果实现的方法
2019/03/25 Javascript
vue中touch和click共存的解决方式
2020/07/28 Javascript
Element InputNumber 计数器的实现示例
2020/08/03 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试
2014/07/14 Python
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
python实现RSA加密(解密)算法
2016/02/17 Python
对python 判断数字是否小于0的方法详解
2019/01/26 Python
Python3从零开始搭建一个语音对话机器人的实现
2019/08/23 Python
flask实现验证码并验证功能
2019/12/05 Python
kafka监控获取指定topic的消息总量示例
2019/12/23 Python
html5新增的定时器requestAnimationFrame实现进度条功能
2018/12/13 HTML / CSS
宝信软件JAVA工程师面试经历
2012/08/19 面试题
旅游管理实习自我鉴定
2013/09/29 职场文书
学校门卫管理制度
2014/01/30 职场文书
联片教研活动总结
2014/07/01 职场文书
台风停课通知
2015/04/24 职场文书
2015年教务工作总结
2015/05/23 职场文书
后天观后感
2015/06/08 职场文书
教你用python控制安卓手机
2021/05/13 Python
opencv-python图像配准(匹配和叠加)的实现
2021/06/23 Python
Nginx 路由转发和反向代理location配置实现
2021/11/11 Servers
Apache POI操作批量导入MySQL数据库
2022/06/21 Servers