【问题标题】:Extracting images from database to website using php使用php从数据库中提取图像到网站
【发布时间】:2022-01-03 02:42:26
【问题描述】:

我的数据库中有 blob 形式的图像,我想做的是,当我在

【问题讨论】:

    标签: php database


    【解决方案1】:

    假设 BLOB 数据存储在称为 products 的 db 表的“image”字段中。

    那么如果你想显示id=123的记录的图片,你可以:

    <?php
    
    $id=123;
    
    $db = new mysqli("localhost", "usernamexxxx", "passwordxxxxxx", "DbName");
    $sql = "SELECT * FROM products WHERE id = ?";
    $stmt = $db->prepare($sql);
    $stmt->bind_param('i', $id);
    $stmt->execute();
    $result = $stmt->get_result();
    $row = $result->fetch_array();
    echo '<img src="data:image/jpeg;base64,'.base64_encode($row['image']).'"/>';
    
    ?>
    

    注意:如果图片是png,请将image/jpeg改为image/png

    补充说明:

    所以对于你的特殊情况“输入人名”,php和html会是这样的(假设人名存储在名为“name”的数据字段中):

    PHP:target.php

    <?php
    
    $name=$_POST["searchname"];
    
    $db = new mysqli("localhost", "usernamexxxx", "passwordxxxxxx", "DbName");
    $sql = "SELECT * FROM products WHERE name = ?";
    $stmt = $db->prepare($sql);
    $stmt->bind_param('s', $name);
    $stmt->execute();
    $result = $stmt->get_result();
    $row = $result->fetch_array();
    echo '<img src="data:image/jpeg;base64,'.base64_encode($row['image']).'"/>';
    
    ?>
    

    HTML 表单将如下所示:

    <form action=target.php method=POST> 
    <input name="searchname">
    <br><input type=submit>
    </form>
    
    
    

    【讨论】:

    • 非常感谢,它的工作非常棒。但正如我在帖子中所说,我的主要问题是使用 使其成为“搜索机”。如果你也能在这里帮我一把,我将永远感激不尽。
    • 请看我修改后的答案(见“附加说明”部分)
    • 是的,我看到了,一切正常,非常感谢您的帮助,我真的很高兴
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-09
    • 1970-01-01
    相关资源
    最近更新 更多