実現したいこと
PHPで「フォームから送信されたディレクトリにあるファイルをダウンロードする」といった処理を
つくろうとしていますが、上手くいかないため質問させていただきます。
発生している問題・エラーメッセージ
下記ソースコードを実行しても、
「�PNG IHDR」から始まる謎の大量の文字の羅列が表示されるのみでダウンロードが行われない。
該当のソースコード
前後は省略しています
PHP
1 2 $fs=scandir('../files/'.$_POST['f_id']); 3 for($for_n=2;count($fs)-1>$for_n;$for_n++){ 4 $fpath='../files/'.$_POST['f_id'].'/'.$fs[$for_n]; 5 $fname=$fs[$for_n]; 6 header('Content-Type: application/force-download'); 7 header('Content-disposition: attachment; filename="'.$fname.'"'); 8 readfile($fpath); 9 } 10 11
###ソースコード補足
'../files/'.$_POST['f_id']
というディレクトリにダウンロードしたいファイルがあり、
scandirでその一覧を取得し
forですべてダウンロードさせようとしています。
$for_nが2から始まるのは "$fs" の配列の0個目、1個目に "."及び".."が含まれるためです。
###その他補足
BASIC認証をかけたページで
自分しかアクセスしませんので、
セキュリティ上の問題は考慮せずとも大丈夫です。
回答2件
あなたの回答
tips
プレビュー