1
我有以下腳本將使用php將數據從我的數據庫導出到csv文件。一切正常,除非我嘗試在Excel中打開文件,我得到「文件已損壞」。當我運行這段代碼時,它顯示錯誤 - 「文件已損壞,無法打開。」提前致謝!使用PHP導出CSV文件當嘗試在MS Excel中打開時創建損壞文件
<?php
// Connection
include_once('conn.php');
$sql = "select * from info";
$qur = mysql_query($sql);
// Enable to download this file
$filename = "sampledata.csv";
header("Content-Disposition: attachment; filename=\"$filename\"");
header("Content-Type: text/csv");
$display = fopen("php://output", 'w');
$flag = false;
while($row = mysql_fetch_assoc($qur)) {
if(!$flag) {
// display field/column names as first row
fputcsv($display, array_keys($row), ",", '"');
$flag = true;
}
fputcsv($display, array_values($row), ",", '"');
}
fclose($display);
exit;
?>
嘗試在記事本或其他文本編輯器中打開文件。它看起來有什麼問題嗎? –
強制性:不推薦使用'mysql_'擴展名,請升級到'mysqli_'或PDO。 –
@JonathanKuhn:是的,它與其他文本編輯器一樣工作,如記事本,openoffice等,但不是在MS Excel中。 –