Dwz与thinkphp整合下的数据导出到Excel实例


Posted in PHP onDecember 04, 2014

本文实例讲述了Dwz与thinkphp整合下的数据导出到Excel的方法。分享给大家供大家参考。具体方法如下:

这个问题困扰了我很久,终于还是自己写JQUERY把它搞掂了,希望能对遇到同样问题的人有所帮助,好吧,下面就是源代码:

jquery代码如下:

$(function(){  

  

        //_getIds方法就是获取已选的要导出的数据的ID,设了两个参数selectedIds--已选id的input名称,targetType-->碎片模式,默认是navTab,如果是dialog的自行修改  

function _getIds(selectedIds,targetType){  

        var ids="";  

        var $box=targetType=="dialog"?$.pdialog.getCurrent():navTab.getCurrentPanel();  

        $box.find("input:checked").filter("[name='"+selectedIds+"']").each(function(i){  

  

            var val=$(this).val();  

            ids+=i==0?val:","+val;});  

            return ids;  

        }  

        //导出excel的按钮 class=iconn,click时触发  

$(".iconn").click(  

function(){  

//因为这个方法直运用到导出到excel 所以这里所需的参数变量我直接写死了  

var targetType="navTab";  

var selectedIds="ids";  

var postType="string";//批量选择的话,以文本的形式获取  

var ids=_getIds(selectedIds,targetType);  

if(!ids){  

alertMsg.error($(".iconn").attr("warn"));  

return false;  

//alert("请选择要导出的数据!");  

}else{  

//将获取到的ids 传给后台处理  

window.open("__URL__/memberExport/ids/"+ids);  

}  

  

});  

});

PHP代码如下:
//member成员信息导出到excel  

public function memberExport(){  

    $id=$_REQUEST['ids'];//获取已选数据的ID  

    //echo $id;  

  

//在这里导出到excel我没有用到phpexcel,是自己写的,很简单,相信大家都明白是什么意思,根据自己需要自行修改就行了  

    $filename=date('Y-m-d');  

    header("Pragma:public");  

header("Expires:0");  

header("Cache-Control:must-revalidate,post-check=0,pre-check=0");  

header("Content-Type:application/force-download");  

header("Content-Type:application/vnd.ms-execl;charset=gb2312");  

header("Content-Type:application/octet-stream");  

header("Content-Type:application/download");  

header('Content-Disposition:attachment;filename="'.$filename.'.xls"');  

header("Content-Transfer-Encoding:binary");  

if(!$id){  

$this->error('非法操作!');  

}else{  

  

$map['id']=array('in',$id);  

$title="用户名\t 姓名\t 部门\t 职务\t 身份证\t 职称\t 学历\t 毕业时间\t 录用时间";  

$title=iconv('utf-8','gbk',$title);  

echo $title;  

set_time_limit(0);  

   $offset= 0;  

   $length=100;  

$Member = M('Member');  

$list=$Member->where($map)->order('id desc')->select();  

if(!$list){  

$this->error('操作错误!');  

}else{  

foreach($list as $key=>$row){  

echo "\n";  

echo iconv('utf-8','gbk',$row['username'])."\t";  

echo iconv('utf-8','gbk',$row['name'])."\t";  

echo iconv('utf-8','gbk',$row['department'])."\t";  

echo iconv('utf-8','gbk',$row['zhiwu'])."\t";  

echo iconv('utf-8','gbk',$row['sfz'])."\t";  

echo iconv('utf-8','gbk',$row['zhicheng'])."\t";  

echo iconv('utf-8','gbk',$row['xueli'])."\t";  

echo iconv('utf-8','gbk',$row['bytime'])."\t";  

echo iconv('utf-8','gbk',$row['lytime'])."\t";  

  

}  

$offset+=$length;  

}  

}  

}

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP调用数据库的存贮过程
Oct 09 PHP
快速开发一个PHP扩展图文教程
Dec 12 PHP
CodeIgniter图像处理类的深入解析
Jun 17 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
php在数组中查找指定值的方法
Mar 17 PHP
PHP+JS实现大规模数据提交的方法
Jul 02 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
分享一个漂亮的php验证码类
Sep 29 PHP
php中类和对象:静态属性、静态方法
Apr 09 PHP
php使用 readfile() 函数设置文件大小大小的方法
Aug 11 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
Dec 21 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
Jul 15 PHP
yii的CURD操作实例详解
Dec 04 #PHP
Yii的CDbCriteria查询条件用法实例
Dec 04 #PHP
php生成随机颜色方法汇总
Dec 03 #PHP
php实现使用正则将文本中的网址转换成链接标签
Dec 03 #PHP
Yii框架中memcache用法实例
Dec 03 #PHP
yii中widget的用法
Dec 03 #PHP
Yii使用ajax验证显示错误messagebox的解决方法
Dec 03 #PHP
You might like
PHP学习笔记之三 数据库基本操作
2011/01/17 PHP
ThinkPHP页面跳转success与error方法概述
2014/06/25 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
2016/12/05 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
2017/02/04 PHP
PHP按一定比例压缩图片的方法
2018/10/12 PHP
PHP实现字母数字混合验证码功能
2019/07/11 PHP
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
保证JavaScript和Asp、Php等后端程序间传值编码统一
2009/04/17 Javascript
Javascript中的isNaN函数使用说明
2011/11/10 Javascript
JS获取图片高度宽度的方法分享
2015/04/17 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
jQuery插件scroll实现无缝滚动效果
2015/04/27 Javascript
javascript中alert()与console.log()的区别
2015/08/26 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
js原生之焦点图转换加定时器实例
2016/12/12 Javascript
jQuery源码分析之init的详细介绍
2017/02/13 Javascript
利用jquery如何从json中读取数据追加到html中
2017/12/01 jQuery
vue按需加载组件webpack require.ensure的方法
2017/12/13 Javascript
JavaScript中Object基础内部方法图
2018/02/05 Javascript
浅谈关于iview表单验证的问题
2018/09/29 Javascript
NestJs 静态目录配置详解
2019/03/12 Javascript
Python 解析XML文件
2009/04/15 Python
连接Python程序与MySQL的教程
2015/04/29 Python
简单理解Python中的装饰器
2015/07/31 Python
Python实现的将文件每一列写入列表功能示例【测试可用】
2018/03/19 Python
对Pyhon实现静态变量全局变量的方法详解
2019/01/11 Python
python利用7z批量解压rar的实现
2019/08/07 Python
Python turtle库绘制菱形的3种方式小结
2019/11/23 Python
Python hashlib加密模块常用方法解析
2019/12/18 Python
canvas烟花特效锦集
2018/01/17 HTML / CSS
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
2014年大学生党员评议表自我评价
2014/09/20 职场文书
2014年班干部工作总结
2014/11/25 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书