ホームページ > バックエンド開発 > PHPチュートリアル > MySQL と PHP を使用して画像を保存および取得するにはどうすればよいですか?

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

Mary-Kate Olsen
リリース: 2024-12-17 08:56:24
オリジナル
710 人が閲覧しました

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 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート