2
我試圖創建一個CSV文件,可以由用戶下載並且不會將數據永久保存在服務器上。使用PHP和mySQL從網絡搜索創建可下載的CSV
我在這個頁面上使用mySQL和PHP。我以正確的格式獲取數據以在網頁上顯示(「回聲」),但無法獲取文件以生成/下載......也許我錯過了某些東西或尋找錯誤的地方,但任何幫助都會很棒!
我一直在嘗試幾個劇本都我自己和別人,我發現,但我目前有如下:
$file = 'export';
$colresult = mysql_query("SHOW COLUMNS FROM ".$tbl_name."");
if (mysql_num_rows($colresult) > 0) {
while ($row = mysql_fetch_assoc($colresult)){
$csv_output .= $row['Field'].", "; $i++; } } $csv_output .= "\n";
$csvresult = mysql_query($sql);
while ($rowr = mysql_fetch_row($csvresult)) {
for ($j=0;$j<$i;$j++) { $csv_output .= $rowr[$j].", ";
}
$csv_output .= "\n"; }
$filename = $file."_".date("Y-m-d_H-i",time()).".csv";
header("Content-type: application/csv");
header("Content-disposition: attachment;filename=".$filename.".csv");
readfile("../documents/csv/".$filename.".csv");
$fp = fopen($filename, 'w');
foreach($csvret as $csvret){
fputcsv($fp, $csvret);
}
print $csv_output;
print $filename;
謝謝!
你應該考慮如果您的數據包含逗號,會發生什麼 – Waygood 2013-03-19 16:50:35
已在桌面上清理過。主要想要創建文件並從中解決問題。 – Cal37 2013-03-19 17:49:33
然後你可以找到'implode(','$ record);'和'implode(',',array_keys($ record));''用於'mysql_fetch_assoc();' – Waygood 2013-03-20 09:15:23