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文件
Jan 04 PHP
PHP 多维数组排序(usort,uasort)
Jun 30 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
Jun 18 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
Aug 20 PHP
php访问数组最后一个元素的函数end()用法
Mar 18 PHP
PHP对文件夹递归执行chmod命令的方法
Jun 19 PHP
php导出中文内容excel文件类实例
Jul 06 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
Laravel构建即时应用的一种实现方法详解
Aug 31 PHP
阿里云Win2016安装Apache和PHP环境图文教程
Mar 11 PHP
如何运行/调试你的PHP代码
Oct 23 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
Terran兵种对照表
2020/03/14 星际争霸
PHP开发的一些注意点总结
2010/10/12 PHP
PHP数据类型之布尔型的介绍
2013/04/28 PHP
PHP自定义大小验证码的方法详解
2013/06/07 PHP
PHP访问Google Search API的方法
2015/03/05 PHP
laravel学习教程之存取器
2016/07/30 PHP
Yii2中使用asset压缩js,css文件的方法
2016/11/24 PHP
在 Laravel 项目中使用 webpack-encore的方法
2019/07/21 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
2019/11/14 PHP
javascript 哈希表(hashtable)的简单实现
2010/01/20 Javascript
js下利用控制器载入对应脚本
2010/07/17 Javascript
jsvascript图像处理—(计算机视觉应用)图像金字塔
2013/01/15 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
什么是Node.js?Node.js详细介绍
2014/06/01 Javascript
使用nodejs开发cli项目实例
2015/06/03 NodeJs
js判断当前页面在移动设备还是在PC端中打开
2016/01/06 Javascript
基于javascript实现tab切换特效
2016/03/29 Javascript
jQuery中使用animate自定义动画的方法
2016/05/29 Javascript
浅谈javascript中的数据类型转换
2016/12/27 Javascript
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
详解微信小程序「渲染层网络层错误」的解决方法
2021/01/06 Javascript
[05:53]完美世界携手游戏风云打造 卡尔工作室观战系统篇
2013/04/22 DOTA
Python、Javascript中的闭包比较
2015/02/04 Python
python虚拟环境virtualenv的使用教程
2017/10/20 Python
Python使用Django实现博客系统完整版
2020/09/29 Python
Django中日期处理注意事项与自定义时间格式转换详解
2018/08/06 Python
Django多数据库配置及逆向生成model教程
2020/03/28 Python
详解Python IO编程
2020/07/24 Python
凯特方迪化妆品官网:Kat Von D Beauty
2016/11/15 全球购物
介绍一下Linux中的链接
2016/05/28 面试题
研究生求职自荐书
2014/06/23 职场文书
我的中国梦演讲稿高中篇
2014/08/19 职场文书
保研导师推荐信
2015/03/25 职场文书
怎么禁用Win11输入法 最新Win11输入法关闭教程
2022/08/05 数码科技
Java使用HttpClient实现文件下载
2022/08/14 Java/Android