ホームページ >データベース >mysql チュートリアル >PHP を使用して MySQL に画像を保存および取得するにはどうすればよいですか?

PHP を使用して MySQL に画像を保存および取得するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-11 16:40:11656ブラウズ

How to Store and Retrieve Images in MySQL using PHP?

PHP を使用して MySQL に画像を保存および取得する

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

画像の挿入

データベースに画像を挿入するには、次の PHP コードを使用できます。 :

$imgData = file_get_contents($filename);
$size = getimagesize($filename);
$link = mysqli_connect("localhost", "username", "password", "dbname");
$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    mysqli_real_escape_string($link, $size['mime']),
    mysqli_real_escape_string($link, $imgData),
    $size[3],
    mysqli_real_escape_string($link, $_FILES['userfile']['name'])
    );
mysqli_query($link, $sql);

を取得しています画像

データベースから画像を取得するには、次の PHP コードを使用できます:

$link = mysqli_connect("localhost", "username", "password", "dbname");
$sql = "SELECT image FROM testblob WHERE image_id=0";
$result = mysqli_query($link, $sql);
header("Content-type: image/jpeg");
echo mysqli_result($result, 0);
mysqli_close($link);

以上がPHP を使用して MySQL に画像を保存および取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。