gpt4 book ai didi

php - 如何使用 PHP 从 MySQL 数据库存储和检索图像?

转载 作者:行者123 更新时间:2023-11-30 22:10:02 24 4
gpt4 key购买 nike

如何在 MySQL 中插入图像,然后使用 PHP 检索它?

我在这两个领域的经验都有限,我可以使用一些代码来开始解决这个问题。

最佳答案

首先您创建一个 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 ''
);

然后你可以像这样将图像写入数据库:

/***
* All of the below MySQL_ commands can be easily
* translated to MySQLi_ with the additions as commented
***/
$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);

您可以在网页中显示来自数据库的图像:

$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);

关于php - 如何使用 PHP 从 MySQL 数据库存储和检索图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40389261/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com