一个DEDECMS自定义表单导出为excel功能的修改方法

2018-04-25dedecms教程
197

1、首先在后台修改/dede/templets/diy_main.htm
 
<a href="../plus/diy.php?action=daochu&diyid={wmd:field.diyid/}" target="_blank">导出为EXCEL</a>
 
修改,后台效果如下图:

 
2、核心内容修改  plus/diy.php
 
$action = isset($action) && in_array($action, array('post', 'list', 'view')) ? $action : 'post';
替换成:
 
$action = isset($action) && in_array($action, array('post', 'list', 'view', 'daochu')) ? $action : 'post';
再在最后一行下面新加代码:
 
当然,下面输出表头的判断语句你可以自己改! 

else if($action == 'daochu')
{
header("Content-type:application/vnd.ms-excel");
Header("Content-Disposition:attachment;filename={$diy->table}_".date("Y-m-d").".xls");   
$query = "desc `{$diy->table}`";
$res = mysql_query($query);
echo "<table><tr>";
//导出表头(也就是表中拥有的字段)
while($row = mysql_fetch_array($res)){
  $t_field[] = $row['Field']; //Field中的F要大写,否则没有结果
/*   echo "<th>".$row['Field']."</th>"; */
        if($row['Field']=='id'){
            echo "<th>ID</th>";
        }elseif($row['Field']=='zhaiwutype'){
            echo "<th>债务类型</th>";
        }elseif($row['Field']=='zhaiquanfang'){
            echo "<th>债权方</th>";
        }elseif($row['Field']=='name'){
            echo "<th>名称</th>";
        }elseif($row['Field']=='jigouhaoma'){
            echo "<th>身份证号/机构代码</th>";
        }elseif($row['Field']=='path'){
            echo "<th>住址/地址</th>";
        }elseif($row['Field']=='tel'){
            echo "<th>联系电话</th>";
        }elseif($row['Field']=='zhaiwufang'){
            echo "<th>债务方</th>";
        }elseif($row['Field']=='zhaiwufangname'){
            echo "<th>债务方名称</th>";
        }elseif($row['Field']=='zhaiwufanghaoma'){
            echo "<th>债务方身份证号/机构代码</th>";
        }elseif($row['Field']=='zhaiwufangpath'){
            echo "<th>债务方地址</th>";
        }elseif($row['Field']=='zhaiwufangtel'){
            echo "<th>债务方电话</th>";
        }elseif($row['Field']=='danbaofang1'){
            echo "<th>担保方</th>";
        }elseif($row['Field']=='danbao1name'){
            echo "<th>担保方名称</th>";
        }elseif($row['Field']=='danbao1haoma'){
            echo "<th>身份证号/机构代码</th>";
        }elseif($row['Field']=='danbao1tel'){
            echo "<th>联系电话</th>";
        }elseif($row['Field']=='zhaiwushuoming'){
            echo "<th>债务说明</th>";
        }elseif($row['Field']=='fayuanzhixing'){
            echo "<th>法院是否强制执行</th>";
        }elseif($row['Field']=='zhixingfayuan'){
            echo "<th>执行法院</th>";
        }elseif($row['Field']=='lianxiren'){
            echo "<th>联系人</th>";
        }elseif($row['Field']=='lianxidianhua'){
            echo "<th>电话</th>";
        }elseif($row['Field']=='zhaiwujine'){
            echo "<th>债务金额</th>";
        }elseif($row['Field']=='nativeplace1'){
            echo "<th>住址/地址</th>";
        }elseif($row['Field']=='jiamengtype'){
            echo "<th>加入类型</th>";
        }elseif($row['Field']=='groupname'){
            echo "<th>公司(机构)名称</th>";
        }elseif($row['Field']=='grouppath'){
            echo "<th>公司地址</th>";
        }elseif($row['Field']=='groupjianjie'){
            echo "<th>公司简介</th>";
        }elseif($row['Field']=='lianxiren'){
            echo "<th>联系人</th>";
        }elseif($row['Field']=='lianxitel'){
            echo "<th>联系电话</th>";
        }elseif($row['Field']=='lianximobile'){
            echo "<th>手机</th>";
        }elseif($row['Field']=='qq'){
            echo "<th>QQ</th>";
        }elseif($row['Field']=='name'){
            echo "<th>姓名</th>";
        }elseif($row['Field']=='xingbie'){
            echo "<th>性别</th>";
        }elseif($row['Field']=='nianling'){
            echo "<th>年龄</th>";
        }elseif($row['Field']=='danwei'){
            echo "<th>工作单位</th>";
        }elseif($row['Field']=='zhiwu'){
            echo "<th>职务</th>";
        }elseif($row['Field']=='dianhua'){
            echo "<th>联系电话</th>";
        }elseif($row['Field']=='mobile'){
            echo "<th>手机</th>";
        }elseif($row['Field']=='mail'){
            echo "<th>E-mail</th>";
        }elseif($row['Field']=='ifcheck'){
            echo "<th>  </th>";
        }else{
            echo "<th>  </th>";
        }
}
echo "</tr>";
//导出数据
$sql = "select * from `{$diy->table}`";
$res = mysql_query($sql);
while($row = mysql_fetch_array($res)){
  echo "<tr>";
    foreach($t_field as $f_key){
        echo "<td>".$row[$f_key]."</td>";
    }
  echo "</tr>";
}
echo "</table>";
}

The End

相关推荐

Dedecms织梦CMS如何添加自定义函数
我们在使用dedecms时候,需要拓展函数,那么这个函数需要写在哪个文件中呢?一般来说,需要写在:include/extend.func.php中,当然也可以写在其他公共文件中方便调用,以下是几个自定义函数示例...
2025-10-05 dedecms教程
80

织梦发布文档时候字数被限制了如何修改?
织梦发布文档时候字数被限制了如何修改,下面以文章发布为例,跟版网小编教你如何修改: 程序文件 dede/article_add.php dede/article_edit.php 修改代码 这里都是被进行了截取,我们只需要将截取字符改长一点就可以 $title= cn_substrR($title,$cfg_title_ma...
2025-07-05 dedecms教程
86

dedecms怎么做判断?怎么在一个标签中输入另外一个标签?
我们在使用织梦DedeCMS系统程序开发网站中,经常遇到需要对文章标题进行字数限制,通常做法是在a标签中加入一个title属性,让鼠标放上去的时候显示完整标题。但是标题被剪裁掉一些字符而不完整,下面跟版网的小编就为你推荐另外几种标题调用方式,如进行标题...
2025-07-05 dedecms教程
69

dedecms怎样设置给图片添加水印
dedecms怎样设置给图片添加水印,具体步骤为: 一、进入系统基本参数中的附件设置,启用是否使用图片水印选项; 二、在图像水印设置中选择文字或图片水印类型,文字水印可调整字体、颜色、透明度及位置,图片水印则需上传png格式的半透明logo,并合理设置大...
2025-07-01 dedecms教程
147

dedecms织梦列表页字段怎么做判断
用到dedecms时候,有时候需要对文章列表、arclist输出时候的字段做判断显示,比如缩略图没有则不显示,有的时候就显示图片,并且固定尺寸,这个要怎么操作呢? 关于列表字段内自定义字段的调用方法,有数据则显示无数据则不显示(备注:limit=3,1意思是从第4...
2025-07-01 dedecms教程
68

织梦内容页使用if判断某个字段是否为空
我们在使用织梦dedecms时候,如何使用if判断某个字段是否为空呢?我们以文章页自定义字段website为例:使用if语句判断website网址是否为空,如果有显示website并加上网址,如果没有就不显示。 {wmd:field.website runphp='yes'}if(@me'') {@me = 'a href="'...
2025-06-21 dedecms教程
171