#1 stjdydayou
导出的代码如下
//导出消费3次以上的用户
public function explortCost3()
{
$fileName=iconv('UTF-8','gb2312','商城消费3次以上的用户');
header("Content-type: application/vnd.ms-excel; charset=utf-8");
header("Content-Disposition: attachment; filename=$fileName.xls");
$tab0903 = spClass('t_bsts_0909250903');
$sql="select a.`f_bsts_0909250903_000`,
a.`f_bsts_0909250903_019` as userName,
a.`f_bsts_0909250903_020` as areaName,
a.`f_bsts_0909250903_021` as address,
a.`f_bsts_0909250903_023` as userMP,
sum(a.`f_bsts_0909250903_009`) as totalMoney,
count(a.`f_bsts_0909250903_000`) as costNum
from `t_bsts_0909250903` as a
left join (
select `f_bsts_0909250903_019` as userName1,
count(`f_bsts_0909250903_000`) as costNum1
from `t_bsts_0909250903` where
(`f_bsts_0909250903_015`=3 or `f_bsts_0909250903_015`=4) and `f_bsts_0909250903_019`<>''
group by `f_bsts_0909250903_019`
) as b on a.`f_bsts_0909250903_019`=b.`userName1`
where (a.`f_bsts_0909250903_015`=3 or a.`f_bsts_0909250903_015`=4)
and a.`f_bsts_0909250903_019`<>'' and b.costNum1>2 group by a.`f_bsts_0909250903_019` order by costNum desc,totalMoney desc
";
$r1=$tab0903->findSql($sql);
$str.= "排序\t";
$str.= "姓名\t";
$str.= "地址\t";
$str.= "联系电话\t";
$str.= "消费总额\t";
$str.= "消费次数\t";
$str.= "\n";
foreach ($r1 as $_k=>$_v)
{
$str.= (++$sortN)."\t";
$str.= $_v['userName']."\t";
$str.= $_v['areaName'].','.$_v['address']."\t";
$str.= $_v['userMP']."\t";
$str.= '¥'.$_v['totalMoney']."\t";
$str.= $_v['costNum']."\t";
$str.= "\n";
}
//转换为GBK编码
$str = iconv("UTF-8","GBK",$str);
//输出
print($str);
}
运动的结果是不生成excel文件,而是把$str的内容全部输出到页面上,哪位大侠帮助一下,小弟感激不尽
2011-02-12 11:50:10