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
建立文件交换功能的脚本(二)
Oct 09 PHP
无需重新编译php加入ftp扩展的解决方法
Feb 07 PHP
ajax完美实现两个网页 分页功能的实例代码
Apr 16 PHP
table标签的结构与合并单元格的实现方法
Jul 24 PHP
PHP两种快速排序算法实例
Feb 15 PHP
在Mac OS的PHP环境下安装配置MemCache的全过程解析
Feb 15 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
PHP环形链表实现方法示例
Sep 15 PHP
php实现生成PDF文件的方法示例【基于FPDF类库】
Jul 21 PHP
laravel框架中间件 except 和 only 的用法示例
Jul 12 PHP
Laravel 修改验证异常的响应格式实例代码详解
May 25 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/05/24 PHP
解析在PHP中使用全局变量的几种方法
2013/06/24 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
深入理解JavaScript系列(4) 立即调用的函数表达式
2012/01/15 Javascript
JS小功能(onmouseover实现选择月份)实例代码
2013/11/28 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
使用AngularJS创建单页应用的编程指引
2015/06/19 Javascript
Easyui Datagrid自定义按钮列(最后面的操作列)
2017/07/13 Javascript
详解JavaScript中的六种错误类型
2017/09/21 Javascript
Array数组对象中的forEach、map、filter及reduce详析
2018/08/02 Javascript
详解vue-video-player使用心得(兼容m3u8)
2019/08/23 Javascript
利用Python中的输入和输出功能进行读取和写入的教程
2015/04/14 Python
python模拟Django框架实例
2016/05/17 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
Python进程间通信Queue消息队列用法分析
2019/05/22 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
Django 1.10以上版本 url 配置注意事项详解
2019/08/05 Python
Python如何使用vars返回对象的属性列表
2020/10/17 Python
HTML5实时语音通话聊天MP3压缩传输3KB每秒
2019/08/28 HTML / CSS
Html5 video标签视频的最佳实践
2020/02/26 HTML / CSS
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
法学函授自我鉴定
2014/02/06 职场文书
环境工程专业自荐信
2014/03/03 职场文书
马智宇结婚主持词
2014/04/01 职场文书
《放飞蜻蜓》教学反思
2014/04/27 职场文书
酒店端午节活动方案
2014/08/26 职场文书
读群众路线的心得体会
2014/09/03 职场文书
关于对大人不礼貌的检讨书
2014/09/29 职场文书
入党后的感想
2015/08/10 职场文书
城镇居民医疗保险工作总结
2015/08/10 职场文书
golang生成vcf通讯录格式文件详情
2022/03/25 Golang
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers
什么是clearfix (一文搞清楚css清除浮动clearfix)
2023/05/21 HTML / CSS