ホームページ > バックエンド開発 > PHPチュートリアル > MySQL に BLOB として保存された画像を表示するにはどうすればよいですか?

MySQL に BLOB として保存された画像を表示するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-29 07:51:14
オリジナル
269 人が閲覧しました

How Can I Display Images Stored as BLOBs in MySQL?

MySQL BLOB 列からの画像の表示

MySQL データベースに BLOB データとして保存されている画像を表示するという探求の中で、次のような問題に遭遇しました。バイナリデータを実際の画像として表示する問題。解決策を詳しく見てみましょう。

解決策 1: インライン Base64 エンコーディング

扱う画像の数が少ない場合は、base64 を使用してエンコードできます。このアプローチでは、バイナリ データを、HTML に直接埋め込むことができるコンパクトな文字列に変換します。

echo '<dt><strong>Technician Image:</strong></dt><dd>' . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">' . "</dd>";
ログイン後にコピー

解決策 2: PHP プロキシ ファイル

より効率的なアプローチ多数の画像の場合は、ID に基づいてデータベースから画像を取得する PHP プロキシ ファイルを作成します。パラメータ:

<img src="image.php?id=<?php echo $image_id; ?>" />
ログイン後にコピー
<?php
$id = (isset($_GET['id']) &amp;&amp; is_numeric($_GET['id'])) ? intval($_GET['id']) : 0;
$image = getImageFromDatabase($id);

header('Content-Type: image/jpeg');
echo $image;
?>
ログイン後にコピー

注: これらのソリューションを正しく実装するには、サーバー構成で画像ファイルの MIME タイプが image/jpeg に設定されていることを確認してください。

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

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