[PHP-users 33224] Re: 初めまして、Napuraと申します。

Tatsuya Ueda ml @ tatsuya.info
2008年 2月 1日 (金) 23:52:08 JST


TATSUYAです。

「napura @ sky.707.to」 さんの
「[PHP-users 33223] Re: 初めまして、Napuraと申します。」 への返信です。

> @を外してみましたが、ダウンロードダイアログが表示され
> 保存すると指定フォルダに保存されます。
> あとはなにも変化がありません。
> コードの置いてあるディレクトリにファイルがある場合は
> 問題ないのですが、
> header("Content-Disposition: attachment;filename="/ttt/xxx.zip"");
> のようにすると
> エラーとなります。

間違っていたら申し訳ないのですが・・・
HTTPヘッダの意味を調べてから使ってみてはどうでしょうか?

Content-Disposition の filename で指定できるのは"ファイル名"で
あってダウンロードさせたいファイルの場所では無いと思います。

もし、サーバ上の /ttt/xxx.zip をダウンロードさせたいので
あれば以下のようなコードになるのではないでしょうか?

<?php
header("Content-Description: File Transfer");
header("Content-Type: application/force-download");
header("Content-Disposition: attachment;filename=xxx.zip");
@readfile("/ttt/xxx.zip");
?>

--
 上田 達也(Tatsuya Ueda) @ TATSUYA.info (http://TATSUYA.info/)
   E-Mail : ml @ tatsuya.info
            tatsuya.ueda @ gmail.com (上記アドレスに送信できない場合はこちらへ)



PHP-users メーリングリストの案内