ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して MySQL データベースにイメージを保存および取得する方法

PHP を使用して MySQL データベースにイメージを保存および取得する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-11 06:31:13290ブラウズ

How to Store and Retrieve Images in a MySQL Database Using PHP?

PHP を使用した MySQL データベースへのイメージの保存と取得

MySQL データベースへのイメージの保存と取得は、Web アプリケーションを開発する場合の一般的なタスクです。画像を扱います。この記事では、PHP を使用してこれを実現する方法を説明します。

データベース テーブルの作成

まず、イメージを保存するためのテーブルを MySQL データベースに作成します。次の SQL ステートメントを使用して、testblob という名前のテーブルを作成できます。

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);
// Connect to MySQL database
... (connection code) ...

$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    mysql_real_escape_string($size['mime']),
    mysql_real_escape_string($imgData),
    $size[3],
    mysql_real_escape_string($_FILES['userfile']['name'])
);

mysql_query($sql);

データベースから画像を取得する

データベースから画像を取得して Web ページに表示するには、次の PHP コードを使用します:

// Connect to MySQL database
... (connection code) ...

$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 を使用して MySQL データベースにイメージを保存および取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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