日期:2014-05-17  浏览次数:20416 次

使用fputcsv导出mysql查询内容出现两次

<?
header('Content-Type: application/vnd.ms-excel;charset="gbk"');
header('Content-Disposition: attachment;filename="user.csv"');
header('Cache-Control: max-age=0');

$fp = fopen('php://output', 'a');
 
$head = array('仓库', '编码', '名称', '规格', '数量', '单位');

fputcsv($fp, $head);
// 计数器
$conn = mysql_pconnect("localhost",'root','root');
mysql_select_db("jhdb",$conn);
$sql = "select b.name,a.Code,c.cName,c.cStd,a.num,c.cUnit from jh_kc a,jh_ck b,jh_inventory c where a.Code=c.Code and a.ckid=b.id and a.ckid=".$_REQUEST["ckid"];

$result = mysql_query($sql,$conn) or die(msgbox("SQL出错:".$sql));
while($myrow = mysql_fetch_array($result,MYSQL_BOTH))
{
fputcsv($fp, $myrow);
}
mysql_free_result($result);

?>

输出的csv文件内容会重复一次,结果如下:

仓库 编码 名称 规格 数量 单位
零配件仓库 零配件仓库 20101001 20101001 塑壳 H-3A 塑壳 H-3A PE白 PE白 37 37 斤 斤
零配件仓库 零配件仓库 20101003 20101003 塑壳 H-3A 塑壳 H-3A PP白 PP白 320 320 斤 斤


------解决方案--------------------
MYSQL_BOTH 是双键格式输出吧?
------解决方案--------------------
while($myrow?=?mysql_fetch_row($result))