Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel實(shí)例
本文實(shí)例講述了Dwz與thinkphp整合下的數(shù)據(jù)導(dǎo)出到Excel的方法。分享給大家供大家參考。具體方法如下:
這個(gè)問題困擾了我很久,終于還是自己寫JQUERY把它搞掂了,希望能對(duì)遇到同樣問題的人有所幫助,好吧,下面就是源代碼:
jquery代碼如下:
//_getIds方法就是獲取已選的要導(dǎo)出的數(shù)據(jù)的ID,設(shè)了兩個(gè)參數(shù)selectedIds--已選id的input名稱,targetType-->碎片模式,默認(rèn)是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;
}
//導(dǎo)出excel的按鈕 class=iconn,click時(shí)觸發(fā)
$(".iconn").click(
function(){
//因?yàn)檫@個(gè)方法直運(yùn)用到導(dǎo)出到excel 所以這里所需的參數(shù)變量我直接寫死了
var targetType="navTab";
var selectedIds="ids";
var postType="string";//批量選擇的話,以文本的形式獲取
var ids=_getIds(selectedIds,targetType);
if(!ids){
alertMsg.error($(".iconn").attr("warn"));
return false;
//alert("請(qǐng)選擇要導(dǎo)出的數(shù)據(jù)!");
}else{
//將獲取到的ids 傳給后臺(tái)處理
window.open("__URL__/memberExport/ids/"+ids);
}
});
});
PHP代碼如下:
public function memberExport(){
$id=$_REQUEST['ids'];//獲取已選數(shù)據(jù)的ID
//echo $id;
//在這里導(dǎo)出到excel我沒有用到phpexcel,是自己寫的,很簡單,相信大家都明白是什么意思,根據(jù)自己需要自行修改就行了
$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 職務(wù)\t 身份證\t 職稱\t 學(xué)歷\t 畢業(yè)時(shí)間\t 錄用時(shí)間";
$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('操作錯(cuò)誤!');
}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;
}
}
}
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- thinkPHP5框架導(dǎo)出Excel文件簡單操作示例
- ThinkPHP使用PHPExcel實(shí)現(xiàn)Excel數(shù)據(jù)導(dǎo)入導(dǎo)出完整實(shí)例
- ThinkPHP基于PHPExcel導(dǎo)入Excel文件的方法
- 詳解thinkphp實(shí)現(xiàn)excel數(shù)據(jù)的導(dǎo)入導(dǎo)出(附完整案例)
- ThinkPHP框架實(shí)現(xiàn)導(dǎo)出excel數(shù)據(jù)的方法示例【基于PHPExcel】
- thinkPHP實(shí)現(xiàn)將excel導(dǎo)入到數(shù)據(jù)庫中的方法
- thinkphp3.2中實(shí)現(xiàn)phpexcel導(dǎo)出帶生成圖片示例
- 基于ThinkPHP+uploadify+upload+PHPExcel 無刷新導(dǎo)入數(shù)據(jù)
- thinkPHP導(dǎo)出csv文件及用表格輸出excel的方法
- ThinkPHP 框架實(shí)現(xiàn)的讀取excel導(dǎo)入數(shù)據(jù)庫操作示例
- thinkphp5.1 框架導(dǎo)入/導(dǎo)出excel文件操作示例
相關(guān)文章
Laravel validate error處理,ajax,json示例
今天小編就為大家分享一篇Laravel validate error處理,ajax,json示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10
php shell超強(qiáng)免殺、減少體積工具實(shí)現(xiàn)代碼
這不是webshell,只是個(gè)webshell免殺工具,切勿當(dāng)初webshell使用,僅限免殺phpwebshell2012-10-10
PHP設(shè)計(jì)模式之適配器模式代碼實(shí)例
這篇文章主要介紹了PHP設(shè)計(jì)模式之適配器模式代碼實(shí)例,本文講解了目標(biāo)、角色、應(yīng)用場景、優(yōu)勢等內(nèi)容,并給出代碼實(shí)例,需要的朋友可以參考下2015-05-05
WordPress主題中添加文章列表頁頁碼導(dǎo)航的PHP代碼實(shí)例
這篇文章主要介紹了WordPress主題中添加文章列表頁碼導(dǎo)航的PHP代碼實(shí)例,這也是制作各種WordPress主題必備的基礎(chǔ)功能,需要的朋友可以參考下2015-12-12
ThinkPHP 6 添加跳轉(zhuǎn)提示擴(kuò)展 liliuwei/thinkphp-jump的操作
liliuwei/thinkphp-jump 是 TP5 中經(jīng)典跳轉(zhuǎn)提示,在 TP6 中已經(jīng)取消,通過 composer 下載該擴(kuò)展可以在 TP6 中使用 TP5 的跳轉(zhuǎn)提示操作,這篇文章主要介紹了ThinkPHP 6 添加跳轉(zhuǎn)提示擴(kuò)展 liliuwei/thinkphp-jump,需要的朋友可以參考下2023-08-08
PHP Curl出現(xiàn)403錯(cuò)誤的解決辦法
這篇文章主要介紹了PHP Curl出現(xiàn)403錯(cuò)誤的解決辦法,是一個(gè)比較奇葩的錯(cuò)誤,刪除一些CURL的參數(shù)即可解決這個(gè)問題,需要的朋友可以參考下2014-05-05
淺析Yii2 gridview實(shí)現(xiàn)批量刪除教程
在朋友圈里有童鞋向我討論GridView的問題,有朋友說你用gridview給我去掉表頭的鏈接?我想的很久,用gridview確實(shí)不容易實(shí)現(xiàn)。有不同見解的朋友歡迎留言。但是呢,這根gridview有個(gè)毛線關(guān)聯(lián)啊,明明是要設(shè)置ActiveDataProvider,你要我怎么用gridview實(shí)現(xiàn)嘛2016-04-04

