国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢(mèng)DEDE > 正文

dede織夢(mèng)后臺(tái)增加導(dǎo)出內(nèi)容到excel功能方法 不會(huì)亂碼

2024-07-12 09:03:19
字體:
供稿:網(wǎng)友

dede織夢(mèng)系統(tǒng)怎樣導(dǎo)出后臺(tái)的文章或自定義模型中的數(shù)據(jù)到excel,并且不出現(xiàn)亂碼

 

在后臺(tái)目錄創(chuàng)建一個(gè)php文件toexcel.php,在最上面加入代碼;

require_once(dirname(__FILE__).'/config.php');require_once(DEDEINC.'/typelink.class.php');require_once(DEDEINC.'/datalistcp.class.php');require_once(DEDEADMIN.'/inc/inc_list_functions.php'); 

加入導(dǎo)出到excel類;

class Excel{      private $head;     private $body;   public function addHeader($arr){          foreach($arr as $headVal){            $headVal = $this->charset($headVal);             $this->head .= "{$headVal}/t ";        }         $this->head .= "/n";     }   public function addBody($arr){           foreach($arr as $arrBody){             foreach($arrBody as $bodyVal){                 $bodyVal = $this->charset($bodyVal);                 $this->body .= "{$bodyVal}/t ";             }             $this->body .= "/n";        }     }   public function downLoad($filename=''){           if(!$filename)               $filename = date('YmdHis',time()).'.xls';           header("Content-type:application/vnd.ms-excel");           header("Content-Disposition:attachment;filename=$filename");            header("Content-Type:charset=gb2312");           if($this->head)              echo $this->head;             echo $this->body;     }    public function charset($string){         return mb_convert_encoding($string,'GBK','auto');       } } 

代碼解釋:

1.輸出列名數(shù)組,并轉(zhuǎn)碼

public function addHeader($arr){          foreach($arr as $headVal){            $headVal = $this->charset($headVal);             $this->head .= "{$headVal}/t ";        }         $this->head .= "/n";     } 

 

2.輸出導(dǎo)出內(nèi)容數(shù)組,并轉(zhuǎn)碼

public function addBody($arr){           foreach($arr as $arrBody){             foreach($arrBody as $bodyVal){                 $bodyVal = $this->charset($bodyVal);                 $this->body .= "{$bodyVal}/t ";             }             $this->body .= "/n";        }     } 

 

3.設(shè)置header頭部信息和導(dǎo)出到excel內(nèi)容,并輸出到瀏覽器

public function downLoad($filename=''){           if(!$filename)               $filename = date('YmdHis',time()).'.xls';           header("Content-type:application/vnd.ms-excel");           header("Content-Disposition:attachment;filename=$filename");            header("Content-Type:charset=gb2312");           if($this->head)              echo $this->head;             echo $this->body;     } 

 

4.轉(zhuǎn)碼,這里不用iconv函數(shù),有可能會(huì)與gd沖突導(dǎo)致輸出空白。用

 

public function charset($string){         return mb_convert_encoding($string,'GBK','auto');       } 

 

7.調(diào)用方法;

$excel = new Excel();  $excel->addHeader(array('列一','列二','列三','列四')); global $dsql; $sql="select 列一字段,列二字段,列三字段,列四字段 from 表名"; $dsql->SetQuery($sql);$dsql->Execute();while($row = $dsql->GetArray()){$list[]=$row;}unset($row);$excel->addBody($list);  $excel->downLoad(); 

后天添加導(dǎo)出到excel代碼:

 

找到后臺(tái)目錄下的templets目錄,下面有個(gè)content_list.htm文件,

找到<a href="javascript:;" onClick="cAtts('attsDel',event,this)" class="coolbg">&nbsp;刪除屬性&nbsp;</a>

在后面加一段代碼

<?php if($channelid==1) echo " <a href=/"toexcel.php/" class=/"coolbg/" target=/"_blank/">導(dǎo)出到excel</a>/r/n"; ?>

 

$channelid就是你的模型id,根據(jù)你導(dǎo)出的表填寫。填寫完之后打開后臺(tái)欄目列表就出現(xiàn)導(dǎo)出按鈕

注意事項(xiàng)

轉(zhuǎn)碼問題,根據(jù)自己的實(shí)際情況

導(dǎo)出字段,多表或自定義模型的表可以通過left join

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 冷水江市| 张掖市| 眉山市| 钦州市| 苏尼特右旗| 同德县| 沙河市| 丰宁| 正安县| 平江县| 瑞安市| 邢台市| 离岛区| 宁国市| 三穗县| 蒙城县| 垫江县| 时尚| 阿巴嘎旗| 江门市| 枣阳市| 蕉岭县| 榆林市| 安国市| 革吉县| 石首市| 大城县| 海南省| 盐城市| 综艺| 红安县| 乌鲁木齐县| 兴山县| 萨嘎县| 崇信县| 准格尔旗| 常熟市| 盐源县| 靖安县| 甘孜| 志丹县|