
はじめまして、PHPについて質問させていただきます。
PHPでファイルを複数ダウンロードできるようしたいと思っています。
色々調べ、header関数を使用し、以下のように記述すると
ファイルのダウンロードは成功しました。
/*****************************************/
// ダウンロードさせる元ファイル(絶対パス)
$filepath = 'test_01.pdf';
// 保存時のファイル名(デフォルト)
$filename = 'download001.pdf';
// HTTPヘッダ送信
header("Content-length: " . filesize($filepath));
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=\"{$filename}\"");
// ファイルを読み込んで出力
readfile($filepath);
/*****************************************/
一つのファイルのダウンロードに成功したので、
次に複数のファイルを順番にダウンロードをさせる為にループ処理をしました。
/*****************************************/
//配列 複数ファイル
$downfile = array("test_01","test_02","test_03");
//データ数
$max = count($downfile);
// ダウンロードさせるディレクトリ(絶対パス)
$filepath = "/home/sites/www.eshop-himawari.com/web/test_nihon/form_down/file/";
// 保存時のファイル名(デフォルト)
$filename = "download";
$filetype = ".pdf";
$kazu = 1;
//ループ処理
for( $i = 0; $i < count( $max ); $i++ ){
$downpath = $filepath.$downfile[$i].$filetype;
$filename = $filename.$kazu.$filetype;
$kazu = $kazu++;
// HTTPヘッダ送信
header("Content-length: " . filesize($downpath));
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=\"{$filename}\"");
// ファイルを読み込んで出力
readfile($downpath);
// $fp = fopen( "$downpath", "rb" );
// @fpassthru( $fp );
}
/*****************************************/
しかし実行すると最初のファイルはダウンロードしますが
2つ目からのファイルはダウンロードされませんでした。
きちんとループ処理をされて、2つ目以降のファイルをダウンロード
するには、どうすればいいのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Excel(エクセル) 【VBA】PDF出力に任意のファイル名前を付ける方法 3 2023/07/21 10:55
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) 【マクロ】ファイル名の日付によって、保管するフォルダを、自動選択したい 4 2023/08/16 11:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/01 12:54
- Excel(エクセル) エクセル2019でPDFファイル名に枝番号をつけたい。 アクティブワークシートを印刷した後の処理とし 4 2023/06/06 21:00
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
zip圧縮の種類について
-
【Spreadsheet_Excel_Writer】...
-
PHPでダウンロードしたファイル...
-
phpでEXCELファイルの編集
-
csvをダウンロードする際、いき...
-
PHPでファイルのダウンロードす...
-
VB.NETのFTPダウンロードについて
-
PDF ダウンロード
-
phpでzipファイルダウンロード...
-
ファイル一覧を表示しその画面...
-
PHPのif文でその処理を途中で抜...
-
FTPコマンドでディレクトリごと...
-
フォントの色を変えるには?
-
Subversionのリポジトリの削除
-
PHPで`headers already sent`と...
-
サーバーによってはmb_send_mai...
-
「include()」関数の使い方につ...
-
ファイルアップロードの上限を...
-
SELECTの値を保持する
-
UWSCにつきまして
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ftp_getでローカルにファイルが...
-
zip圧縮の種類について
-
PHPでファイルのダウンロードす...
-
libxml2のインストール
-
PHPで複数ファイルのダウン...
-
生成したHTMLをボタンクリック...
-
ファイルのダウンロードのイベ...
-
VB.NETのFTPダウンロードについて
-
phpでzipファイルダウンロード...
-
PHPでダウンロードしたファイル...
-
複数ファイルを連続でダウンロード
-
eclipseでコメントアウトができ...
-
Excelファイルをダウンロード
-
ファイルに書き込む時の負荷に...
-
CSVファイルのダウンロード
-
ファイル一覧を表示しその画面...
-
ファイルアップロード・ダウン...
-
phpでEXCELファイルの編集
-
PDF ダウンロード
-
ダウンロードファイル名の文字...
おすすめ情報