0
ブラウザで表示するのではなく、強制的にファイルをダウンロードするヘッダーがありますが、そのオプションを指定する必要があります。私はStack Overflowのいくつかの記事を見てきましたが、この質問に答えましたが(例えばHow to force files to open in browser instead of download (pdf)?)、まだ希望の結果が得られていないので、何か不足しているかどうかチェックしたいと思っていました。ここでブラウザで強制的にPDFファイルをダウンロードする
は
$file = 'file.pdf';
$filePath = 'path/to/file.pdf';
header("Cache-Control: public");
header("Content-Length: 20000");
header("Content-Description: File Transfer");
header("Content-Type:file");
header('Content-Disposition: attachment; filename="$file"');
header("Content-Transfer-Encoding: binary");
readfile($filePath);
そして、ここがしようとすると、ブラウザ
header("Cache-Control: public");
header("Content-Length: 20000");
header("Content-Description: File Transfer");
header("Content-Type:file");
header('Content-Disposition:inline; filename="$file"');
header("Content-Transfer-Encoding: binary");
readfile($filePath);
内のファイルを表示するには、ヘッダーですダウンロードを強制するために私のヘッダですので、唯一の変化は、コンテンツ-dispositionヘッダがあります。
しかし、まだマークアップがブラウザに表示されています(画像参照)。
任意のアイデア?あなたがダウンロードを実行するために、ブラウザに指示したいときは、まだコンテンツ・処分のためinline
を使用している
感謝
申し訳ありません - 私のミスは、それが添付ファイルを可能shoudl(と私のコードである - 上記を修正しています)。いずれにせよ、この問題はブラウザに表示されているダウンロードを強制することではありません – Newfoundland