2012-06-22 77 views
2

我使用此代碼將查詢提取到csv文件中,但它重複打印的字段。php重複輸出

下面的代碼是否有問題?

if (!$result1) { echo mysql_error(); } 
while ($row = mysql_fetch_array($result1)) { 
    fputcsv($fh, $result1, ','); 
} 
fclose($fh); 

這一切都發生我在fputcsv插入,

+0

$ result1是來自mysql的結果句柄,它是** NOT **您正在提取的行數據。 –

+0

什麼是查詢? – ametren

回答

2

變化:

fputcsv($fh, $result1, ','); 

要:

fputcsv($fh, $row, ','); 

更新:雖然你拒絕提供更多的細節,我在maki之後猜測這個問題這種改變是mysql_fetch_array默認返回一個組合的數字索引/關聯數組。你需要通過MYSQL_NUM才能得到你想要的結果。因此,完整的代碼是:

if (!$result1) 
    echo mysql_error(); 

while ($row = mysql_fetch_array($result1, MYSQL_NUM)) /* <-- Added MYSQL_NUM */ 
    fputcsv($fh, $row, ','); /* <-- $row, not $result1 */ 

fclose($fh); 
+0

以及這是給我一個錯誤的輸出... –

+1

什麼是預期的輸出和你得到的輸出是什麼? –

2
fputcsv($fh, $result1, ','); 

難道你不想要嗎?

fputcsv($fh, $row, ',');