私はユーザーから提出されたpdfファイルを持っています(ファイルアップロード)。ファイルを取得したら、2つの関数を実行し、blobとしてデータベースに格納しました。私が何をしたいかPHPディスクに書き込まずにクライアントブラウザにPDFを送信
$file = base64_encode(file_get_contents($pathToFile));
、ディスク(サーバ側)にそれを記述することなくブラウザにPDFファイルを送信します。ファイルを再構築してディスクに保存し、ファイルへのリンクを生成すると、正常に開きます。
file_put_contents("pathToPutFile", base64_decode($dataFromDB));
しかし、私は、ディスクに保存せずにブラウザにPDFファイルを送信しようとした場合、私はエラーを取得するには、下図の「PDFドキュメントの読み込みに失敗しました」。
この偉業を試みるために使用されるコードは、以下です。
$data = base64_decode($origSel['InvestigationFile']);
header('Content-Type: application/pdf');
header('Content-Disposition: inline; filename="Statement"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
echo $data;
最初にファイルがディスク(サーバー側)に書き込まれていない場合でも、ファイルをユーザーに送信していますか?
可能であれば、何が間違っていますか/間違っていますか?
不可能な場合、ユーザーに表示されたPDFファイルがサーバーから削除されるようにするにはどうすればよいでしょうか。