【问题标题】:I need to show my blob file as a downloadable PDF我需要将我的 blob 文件显示为可下载的 PDF
【发布时间】:2015-10-05 11:07:11
【问题描述】:

有什么想法吗?我已经用和图像完成了这个(让图像显示但仅此而已)

这是我用于图像的:

<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 来做到这一点。有接盘侠吗?

【问题讨论】:

    标签: php sql pdf download


    【解决方案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();
    ?>
    

    【讨论】:

    • 您好,我试过了,但它似乎不起作用...我的 blob 文件作为 $bigFile 存储在 php 中。也许这会有所帮助
    • 你可以试试如果是文件 $blob_contents = file_get_contents($bigFile); header("内容长度:".strlen($blob_contents));回声 $blob_contents;其他明智的 header("Content-length: ".strlen($bigFile));回声 $$bigFile;
    【解决方案2】:

    提醒一句,在数据库中存储 blob 通常不是 被认为是最好的主意,因为它会导致表膨胀并具有 与它相关的许多其他问题。更好的方法是 将文件移动到可以检索的文件中的某个位置, 并将文件的路径存储在数据库中而不是文件中 自己。

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

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-03-02
        • 1970-01-01
        • 1970-01-01
        • 2022-01-22
        • 1970-01-01
        • 2017-03-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多