在使用Dedecms进行网站管理时,导出订单列表到Excel表是一项常见的需求。本文将详细介绍如何实现这一功能,并确保导出的Excel文件能够正确显示数据。

 

首先,我们来看一下最终的导出效果:

Dedecms订单列表导出到Excel表教程

 

以下是具体的操作步骤:

 

1. 可选择导出指定的Dedecms CMS订单,如果不选择任何订单,则会导出所有订单。


2. 导出的Excel文件会按照当前时间命名,以便于区分不同的导出记录。


3. 建议使用WPS软件打开导出的Excel文件,因为在Office软件下可能会出现乱码问题。


 

接下来是具体的代码修改步骤:

1. 打开 /dede/shops_operations.php 文件,找到以下代码:

else if ($dopost == 'delete')

 

在其上方添加以下代码:


else if ($dopost == 'out')
{
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=".date("Y-m-d-H-i-s").".xls");
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
$wh = '';
if( !empty($nid) )
{
$nids = explode('`',$nid);
foreach($nids as $n)
{
if($wh=='') $wh = " WHERE o.oid='$n' ";
else $wh .= " OR o.oid='$n' ";
}
}
$sql = "SELECT o.*,p.title,p.price as uprice,d.dname,u.* FROM dede_shops_orders as o left join dede_shops_products as p on o.oid=p.oid left join dede_shops_delivery as d on d.pid=o.pid LEFT JOIN dede_shops_userinfo AS u ON o.oid=u.oid $wh";
$dsql->SetQuery($sql);
$dsql->Execute('t');
while($arr = $dsql->GetArray('t'))
{
echo "";
echo "";//订单号
echo "";//商品名称
echo "";//单价
echo "";//数量
echo "";//支付方式
echo "";//配送费
echo "";//购买时间
echo "";//收货人
echo "";//地址
echo "";//邮编
echo "";//联系电话
echo "";//邮箱
echo "";//留言 
echo "";//合计
echo "";//状态
echo "";
}
echo "
订单号商品名称单价(元/单位)数量支付方式配送费购买时间收货人地址邮编联系电话邮箱留言合计(元)状态
".$arr['oid']."".$arr['title']."".$arr['uprice']."".$arr['cartcount']."".GetsType($arr['paytype'])."".$arr['dname']."费用:".$arr['dprice']."元".GetDateTimeMk($arr['stime'])."".$arr['consignee']."".$arr['address']."".$arr['zip']."".$arr['tel']."".$arr['email']."".$arr['des']."".$arr['priceCount']."".GetSta($arr['state'])."
"; exit(); }

 

2. 打开 /dede/shops_operations.htm 文件,找到以下代码:

 

在其下方添加以下代码:



    

 

3. 继续在同一文件中找到以下代码:

function PushSel(){

 

在其上方添加以下代码:


function OutSel()
{
var nid = getCheckboxItem();
location.href = "shops_operations.php?dopost=out&nid="+nid;
}
    

 

完成以上步骤后,您就可以成功实现Dedecms订单列表的导出功能了。请务必仔细阅读教程,注意代码添加的位置,有的需要在下方添加,有的则需要在上方添加。