ホームページ >バックエンド開発 >PHPチュートリアル >MySQL データベースからの BLOB イメージを PHP ページに表示するにはどうすればよいですか?
PHP ページ表示のために MySQL データベースから BLOB イメージを取得する
PHP ページ上で MySQL データベースから BLOB イメージを表示するときに問題が発生しましたか?この記事では、この問題に対処し、バイナリ JPEG データの恐ろしい悪夢を克服するための実行可能な解決策を提供します。
問題の定義:
画像を「詳細」に組み込もうとしています。 " ページを作成し、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 ページ (例: "image.php") を作成します:
HTML:
<img src="image.php?id=<?php echo $image_id; ?>" />
PHP ファイル(image.php):
<?php $id = (isset($_GET['id']) && is_numeric($_GET['id'])) ? intval($_GET['id']) : 0; $image = getImageFromDatabase($id); // your code to fetch the image header('Content-Type: image/jpeg'); echo $image; ?>
このメソッドのヘッダーに MIME タイプ (「image/jpeg」) を指定することを忘れないでください。
これらのメソッドのいずれかを実装することで、では、MySQL データベースからの画像を誇らしげに表示して、技術者のマグカップや、所有しているその他の視覚的に魅力的なデータを紹介できるようになりました。 Web 開発の取り組みがうまくいきますように!
以上がMySQL データベースからの BLOB イメージを PHP ページに表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。