📜  显示来自 mysqli 数据库的图像 - PHP (1)

📅  最后修改于: 2023-12-03 15:40:10.644000             🧑  作者: Mango

显示来自 mysqli 数据库的图像 - PHP

在 PHP 中,可以使用 mysqli 函数来连接 MySQL 数据库。从中获取图像并显示在网页上的过程如下:

  1. 连接数据库

首先,需要使用 mysqli_connect() 函数来连接 MySQL 数据库。这个函数需要传入4个参数:主机名、用户名、密码和数据库名。示例代码如下:

$host = 'localhost';
$user = 'root';
$password = '';
$dbname = 'test_db';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (!$conn) {
    die('连接数据库失败:' . mysqli_connect_error());
}
  1. 获取图像数据

获取图像数据的过程涉及到两个步骤:查询数据库并读取图像二进制数据。

查询数据库的过程需要使用 mysqli_query() 函数。示例代码如下:

$sql = "SELECT image FROM images WHERE id=1";
$result = mysqli_query($conn, $sql);

if (!$result) {
    die('查询数据库失败:' . mysqli_error($conn));
}

读取图像二进制数据的过程需要使用 mysqli_fetch_assoc() 函数。示例代码如下:

$row = mysqli_fetch_assoc($result);
$image = $row['image'];
  1. 输出图像

获取到图像数据后,需要将其输出到网页中。输出图像的过程需要设置正确的 Content-Type 头部信息,并使用 echo 函数将图像数据输出到浏览器。

设置 Content-Type 的代码如下:

header('Content-Type: image/jpeg');

将图像数据输出到浏览器的代码如下:

echo $image;

完整的 PHP 代码如下:

$host = 'localhost';
$user = 'root';
$password = '';
$dbname = 'test_db';

$conn = mysqli_connect($host, $user, $password, $dbname);

if (!$conn) {
    die('连接数据库失败:' . mysqli_connect_error());
}

$sql = "SELECT image FROM images WHERE id=1";
$result = mysqli_query($conn, $sql);

if (!$result) {
    die('查询数据库失败:' . mysqli_error($conn));
}

$row = mysqli_fetch_assoc($result);
$image = $row['image'];

header('Content-Type: image/jpeg');
echo $image;

mysqli_close($conn);

上述代码查询数据库中 id 为 1 的记录所对应的图像,并将其输出到浏览器中。

以上就是使用 PHP 从 mysqli 数据库中获取并显示图像的过程。