SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

httpsでダウンロードしたCSVファイルをExcelで開けない(IEにて)

こんなのを頭につけるといいです。

header('Cache-Control: public');
header('Pragma: public');
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 1800) . ' GMT');

下記のヘッダだけだと足りない。

header('Content-Disposition: attachment; filename=xxxxxx.csv');
header('Content-Length: ' . strlen($csv));
header("Content-Type: application/octet-stream");
echo $csv;

IEでエラーが発生。開かない。

Internet Explorer では、server – file をダウンロードできません。
このインターネットのサイトを開くことができませんでした。要求されたサイトが使用できないか、見つけることができません。後でやり直してください。

microsoftの不具合情報

http://support.microsoft.com/kb/316431/ja
Word文書も含めて、Office全般該当するみたいです。

session_start()して、デフォルトの状態だとヘッダはno-cache。
no-cache で、一瞬たりともローカルにキャッシュできないと、開けないみたいです。

関連するメモ

コメント