首页 > 后端开发 > php教程 > 如何使用 MySQL 和 PHP 存储和检索图像?

如何使用 MySQL 和 PHP 存储和检索图像?

Mary-Kate Olsen
发布: 2024-12-17 08:56:24
原创
712 人浏览过

How Can I Store and Retrieve Images Using MySQL and PHP?

使用 MySQL 和 PHP 存储和检索图像

将图像插入 MySQL 数据库涉及创建一个表来存储图像,然后执行用于插入图像数据的 SQL 查询。首先,创建一个名为“testblob”的 MySQL 表,其中包含用于存储图像及其类型、大小、类别和名称的列。

create table testblob (
    image_id        tinyint(3)  not null default '0',
    image_type      varchar(25) not null default '',
    image           blob        not null,
    image_size      varchar(25) not null default '',
    image_ctgy      varchar(25) not null default '',
    image_name      varchar(50) not null default ''
);
登录后复制

使用 SQL 查询将图像插入到此表中指定图像类型、实际图像数据、图像大小和图像名称。

$imgData = file_get_contents($filename);
$size = getimagesize($filename);
mysql_connect("localhost", "$username", "$password");
mysql_select_db ("$dbname");
// mysqli 
// $link = mysqli_connect("localhost", $username, $password,$dbname); 
$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    /***
     * For all mysqli_ functions below, the syntax is:
     * mysqli_whartever($link, $functionContents); 
     ***/
    mysql_real_escape_string($size['mime']),
    mysql_real_escape_string($imgData),
    $size[3],
    mysql_real_escape_string($_FILES['userfile']['name'])
    );
mysql_query($sql);
登录后复制

可以使用另一个选择的 SQL 查询从数据库中检索图像来自相应表的图像数据。

$link = mysql_connect("localhost", "username", "password");
mysql_select_db("testblob");
$sql = "SELECT image FROM testblob WHERE image_id=0";
$result = mysql_query("$sql");
header("Content-type: image/jpeg");
echo mysql_result($result, 0);
mysql_close($link);
登录后复制

以上是如何使用 MySQL 和 PHP 存储和检索图像?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板