0

MySQL データを CSV ファイルにエクスポートしようとしています。すべてのブラウザで正常に動作しますが、MAC システムでのみ問題が発生します。ファイルは filename.csv.xls としてダウンロードされますが、これは filename.csv である必要があります。ここで何か不足していますか?以下はソースコードです。

<?php
header("Content-type: application/vnd.ms-excel"); 
header("Content-Disposition:csv" . date("Y-m-d")); 
header( "Content-disposition: filename="file.csv");
print $csv_output;
exit;
?>

ありがとう

4

2 に答える 2

2

content-type ヘッダーである可能性があります。代わりにこれを試してください:

header("Content-type: text/csv");

セキュリティ上の注意: また、あなたが SQL インジェクションに対して無防備であることにも気付きました。特にデータをサニタイズしていないため、変数は常にmysql_real_escape_stringを介して渡す必要があります。また、改良されたmysqliの代わりに mysql を使用しています。

于 2012-12-21T20:19:53.697 に答える
2

おそらく、ヘッダーで正しいコンテンツタイプを使用した場合

text/csv

Excel .xls コンテンツ タイプ ヘッダーではなく

application/vnd.ms-excel
于 2012-12-21T20:20:07.273 に答える