【问题标题】:PHP display blob from DB来自数据库的 PHP 显示 blob
【发布时间】:2020-09-05 15:20:08
【问题描述】:

我只想在我的网页中显示我的 DB blob 以制作个人资料图片,但它不起作用,它在完整选项卡中显示我的 img 但我想将我的 img 显示为标签以放入其他信息我的页面。

public function getBlob(){
    $stmt = MyPDO::getInstance()->prepare("SELECT * FROM prj_img where id = 1 ");
    $stmt->bindParam(1, $_GET['id']);
    $stmt->execute();


    $blob= $stmt->fetch();
    $img = $blob['name']; //myBlob
    header("Content-type: image/jpeg");
    echo $blob['data'];
} 

【问题讨论】:

    标签: php blob


    【解决方案1】:

    如果您的图像确实在数据库中存储为 blob(这很不寻常),那么您需要一个将它们显示为图像的脚本,然后从那里获取您的图像。

    因此,您发布的代码(具有image/jpeg 标头)应该是一个单独的图像页面。例如,get_image.php

    之后您可以在其他页面上使用<img src="get_image.php" />

    当然,您可能需要一些输入来确定要显示的图像,这也需要输入验证。

    【讨论】:

      【解决方案2】:

      您应该尝试使用 img 标签来显示来自 DB blob 的图片,如下所示

      public function getBlob(){
          $stmt = MyPDO::getInstance()->prepare("SELECT * FROM prj_img where id = 1 ");
          $stmt->bindParam(1, $_GET['id']);
          $stmt->execute();
      
      
          $blob= $stmt->fetch();
          $img = $blob['name'];
          echo '<img src="data:image/jpeg;base64,'.base64_encode($img) .'" />';
      } 
      

      【讨论】:

        猜你喜欢
        • 2019-07-01
        • 1970-01-01
        • 2012-02-03
        • 1970-01-01
        • 1970-01-01
        • 2018-04-02
        • 2015-09-27
        • 2017-07-15
        • 1970-01-01
        相关资源
        最近更新 更多