织梦园模板网提供云优cms模板,pbootcms模板,Wordpress主题模板等各类企业新闻资讯网站模板下载服务。织梦园网站模板交流群
用户名:
密码:
注册
注册后享受折扣价

织梦dedecms自定义表单导出到excel的方法

织梦园模板 / 2021-04-22 / 收藏

效果展示:

3-1FR0104351L8.gif

(此图片来源于网络,如有侵权,请联系删除! )


不写死任何字段,不写死任何东西,修改2个文件,让织梦自定义表单自由导出到Excel表格里。

修改教程如下:

1,在文件 \dede\templets\diy_main.htm 找到
<a href="../plus/diy.php?action=list&diyid={dede:field.diyid/}" target="_blank"><img src='images/gtk-tmp.png' title='预览' alt='预览' />前台预览</a>

后面加
<a href='diy_list.php?action=excel&diyid={dede:field.diyid/}' target="_blank">导出表单Excel</a>

2,\dede\diy_list.php 14行左右
$action = isset($action) && in_array($action, array('post', 'list', 'edit', 'check', 'delete')) ? $action : ''; 

改为
$action = isset($action) && in_array($action, array('post', 'list', 'edit', 'check', 'delete','excel')) ? $action : ''; 

3,在 文件结尾处
else{
    showmsg('未定义操作', "-1");
}

前面加入
elseif($action == 'excel')
{    
    header("Content-type:application/vnd.ms-excel");
    header("Content-Disposition:attachment;filename={$diy->name}_".date("Y-m-d").".xls");
    $fieldlist = $diy->getFieldList();
    echo "<table><tr>";
    foreach($fieldlist as $field=>$fielddata)
    {
        echo "<th>{$fielddata[0]}</th>";
    }
    echo "<th>状态</th>";
    echo "</tr>";
    $sql = "SELECT * FROM `$diy->table` ORDER BY id ASC";
    $dsql->SetQuery($sql);
    $dsql->Execute('t');
    while($arr = $dsql->GetArray('t'))
    {
        echo "<tr>";
        foreach($fieldlist as $key => $field)
        {
            echo "<td>".$arr[$key]."</td>";
        }
    $status = $arr['ifcheck'] == 1 ? '已审核' : '未审核';
    echo "<td>".$status."</td>";
    echo "</tr>";
    }
    echo "</table>";
}

相关站长手记

收缩