[PHP-users 19185]Re: バイナリファイルのダウンロードを行うと名前が変わってしまう
ケムシ
keigo-fu @ selene.dricas.com
2003年 12月 2日 (火) 17:23:56 JST
> はじめまして、なかじと申します。
>
> 以下のリストでバイナリファイルをダウンロードしようと思って
> いますが、保存画面のファイル名が自動的に変わってしまいます。
>
> ファイル名の例)111-222-333.tar
> ダウンロード保存画面に表示される名前)
> IE6.0 ... 111-222-333[1].tar
> Netscape7.02 ... 111-222-333.php
>
> これは、PHPの問題なのか、ブラウザーの問題なのかもわかりません。
> よろしくお願いします。
> 使用しているPHPのバージョンは4.3.3,Turbolinux8.0上で動いています。
>
> リスト)
> $filename = "111-222-333.tar";
> $filesize = filesize($filename);
> header("Accept-Ranges: none");
> header("Content-Length: $filesize");
> header("Content-Disposition: filename=$filename");
> header("Content-Type: application/octet-stream");
> $fp=fopen($filename,"rb");
> fpassthru($fp);
>
Windows 2k + Apache1.3.29 + PHP 4.3.4環境でしか確認してませんが
※PHPモジュール動作
<?
$filepath = "./file/111-222-333.tar";//File Path
$filesize = filesize($filepath);//File Size
header("Content-Type: application/octet-stream; name=".basename($filepath));//MIME Type
header("Content-Disposition: attachment; filename=".basename($filepath));//File Name
header("Content-Length: $filesize");//File Size Send
readfile($filepath);//Reading File
exit;//PHP quit
?>
で少なくともIE6では「111-222-333.tar」と保存されます。
PHP-users メーリングリストの案内