微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-向/从MySQL数据库插入/查看图像

我在DB中插入图像时遇到问题.
该表具有以下结构:

> id-> INT(3)->自动增量
>名称-> VARCHAR(30)
> extension-> VARCHAR(10)[可能太短]
> img-> MEDIUMBLOB

插入图像的PHP代码为:

if($_FILES['file']['error']==0){
        $result = is_uploaded_file($_FILES['file']['tmp_name']);
        if(!$result){
            echo "Upload Failed";
        }else{
            $type = explode("/", $_FILES['file']['type']);
            $extension = $type[1];

            $name = $_FILES['file']['name'];
            $img = $_FILES['file']['tmp_name'];
            $img = file_get_contents($_FILES['file']['tmp_name']);
            $img = addslashes ($img);
        }

        $sql = "INSERT INTO images (name, extension, img) VALUES ('$name', '$extension', '$img')";
        $result = $MysqLi->query($sql);
        if($result){
            echo "insertion was successful";
        }else{
            echo "insertion Failed: ".$MysqLi->error;
        }

这就是我尝试查看img的方法

$sql = "SELECT name, extension, img FROM images WHERE id='1'";
$result = $MysqLi->query($sql);
if($result){
    $a = $result->fetch_assoc();
    header ("Content-type: image/".$a['estensione']);
    echo $a['img'];

}else{
    echo "AAAAAAAAA<hr>";
    echo $MysqLi->error;
}

插入还可以,但是我无法查看图像.
另外,还有另一种在Db中上传图片方法吗?

解决方法:

图像标签示例中的第一个(您要显示结果的页面)

标记中,从fetch_image_frm_db.PHP页面获取图像,然后显示

<img src="fetch_image_frm_db.PHP?id=<?PHP echo $id_of_row;?>"/> 

fetch_image_frm_db.PHP页面

$id=$_GET['id'];

$query = "SELECT * FROM images WHERE id=$id";

$result=MysqL_query($query) or die('Error, query Failed'.MysqL_error()); 
$row=MysqL_fetch_array($result);

header("Content-type:image/jpeg");
stripslashes ($row['img']);

echo $row['img']; 

**在db中存储图像不是一个好习惯

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐