※ ChatGPTを利用し、要約された質問です(原文:mysqlに保存した画像の表示がうまくいかない)
mysqlに保存した画像の表示がうまくいかない
このQ&Aのポイント
phpとmysqlで作成した検索システムにおいて、画像の表示がうまくいかない問題が発生しています。
画像はmysqlのテーブルにMEDIUMBLOB型で保存されており、画像の表示箇所でget_image.phpを使用して画像を取得しています。
画像は保存されているようですが、どうしても正常に表示されません。解決方法を教えてください。
phpとmysqlで検索システムを作っています。
今回、mysqlにテキストデータと一緒に画像も保存し検索結果を表示する時に画像も一緒に表示されるようにしたいと考えています。
ひとまずテキストデータは問題なく保存、検索、表示ともに正常に動作していますが、画像がどうしてもうまく表示されません。
DB内を確認してみると、保存はきちんとされているようなのですが。
わかる方がいらっしゃいましたら、アドバイスをいただけないでしょうか?
以下にコードの内容を記載します。テキストデータは正常に動作するので、画像の表示に関する部分だけ記載させて頂きます。
※検索結果の該当フィールドのidをキーとして渡して、該当するidの画像(DB内のimage1)を表示する。
よろしくお願いします。
【mysqlテーブル】
create table entries (
id int not null auto_increment primary key,
name varchar(255),
address varchar(255),
image1 MEDIUMBLOB NOT NULL,
image2 MEDIUMBLOB NOT NULL,
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
【result.php】
//画像表示箇所
<?php echo '<img src="get_image.php?id=' . $row['id'] . '">' ?>
【get_image.php】
<?php
$id = $_GET['id'];
header('Content-Type: image/jpg');
echo $row['image1'];
?>
お礼
ご回答ありがとうございます。 ご指摘頂いた点修正したところ、無事表示されました。 ありがとうございます。