我需要将我的blob文件显示为可下载的PDF

时间:2015-07-16 06:34:07

标签: php sql pdf download

任何想法如何?我用和图像完成了这个(让图像显示但是没有更多)

这就是我用于图像的内容:

<p style="color:black; font-size:14px; text-align: left">
                    property image here: <br>
                    <img src="data:image/jpeg;base64,<?php echo base64_encode($mainImage); ?>" />

                    </p>

这可以很好地在屏幕上显示图像。但我将pdf文件存储为LONGBLOB,并且需要将它们下载到我网站上的用户。我需要使用基本的PHP来做到这一点。任何人?

3 个答案:

答案 0 :(得分:1)

你应该使用代码如下:

<?php
  header('Content-type: application/pdf');
  header("Cache-Control: no-cache");
  header("Pragma: no-cache");
  header("Content-Disposition: inline;filename='document.pdf'");
  header("Content-length: ".strlen($blob_contents));
  echo $blob_contents;
  exit();
?>

答案 1 :(得分:0)

  

虽然有一个警告,但在数据库中存储blob通常不是   被认为是最好的主意,因为它可能导致表膨胀,并有一个   与之相关的其他问题的数量。一个更好的方法   将文件移动到可以检索的文件中的某个位置,   并将文件的路径存储在数据库中而不是文件中   本身。

它必须使您的数据库变得沉重,并且不容易备份数据库

答案 2 :(得分:0)

您可以使用HTML5“下载”属性创建链接,该属性将要求用户下载PDF文件,如下所示:

<a title="Download PDF" download="Sample.PDF" href="data:application/pdf;base64,%PDFCONTENT%">Click here to download</a>