站长技术网

首页 > 建站教程 > CMS教程 >

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

很多站长朋友使用织梦dedecms来网站的时候经常会使用到自定义表单的功能,织梦的自定义表单可以使用灵活,可以自定义增加需要的变量、使用该功能来收集用户信息,用户留言,非常方便、
最近有用户定制网站时需求是自定义表单的内容需要导出exel表格,网上找了几个相关教程测试了下,发现,织梦58的教程完全错误、随后看了跟版网的教程,依然是错误的、
下面80站长网对正确的织梦dedecms自定义表单增加导出exel表格的详细更改教程与代码进行整理、
下面是该功能的使用方法:
dedecms织梦自定义表单导出到excel的方法
修改教程如下:
1,找到该路径下的文件/dede/templets/diy_main.htm
2,找到 前台预览</a>在其下一行增加代码<a href="diy_list.php?action=excel&diyid={dede:field.diyid/}" target="_blank">导出表单Excel</a>注意  | 这个分割符号,这个分割符号加在 前台预览</a> 的后面,可以参考上面的代码
3,找到路径下的文件/dede/diy_list.php
4,找到 array('post', 'list', 'edit', 'check', 'delete')) 将该代码修改为 array('post', 'list', 'edit', 'check', 'delete', 'excel'))
      继续找到 else
{
    showmsg('未定义操作', "-1");
}   在其上面加入
else if($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 DESC";
$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>";
}
修改完成 、以上为dedecms织梦自定义表单导出到excel的完整教程,希望对站长朋友有些帮助