• ベストアンサー

データベースからの画像の読み出し

お世話になります。 アップロードされた画像のバイナリデータをデータベースに格納して、PHPからデータを読み出して表示させているのですが、IE, Firefox, safari, operaなどのブラウザでは正常に表示できるのに、携帯端末のブラウザからは画像が表示されません。 $header = "Content-Type:image/jpeg"; header($header); echo $image; のようなコードですが、なぜ携帯端末で表示できないのか分からず困っております。 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • elbend
  • ベストアンサー率50% (7/14)
回答No.3

経験上の判断で確かな情報ではありませんが、 携帯では、ファイルの拡張子で画像を判断している場合が 多いようです。(.jpg .gif .png などで判断。ファイルヘッダなどは見ていない模様) そのため、直接データを吐き出しても表示されないみたいです。 私は面倒でしたが、表示のために実ファイルを出力し、それを 表示するようにしていました。 (後にやはりまどろっこしいので、実ファイルを保存する方法に変えましたが。)

seventhang
質問者

お礼

ご回答ありがとうございます。 ファイルを書き出してから表示させるなら、確かに最初からファイルとして保存しておいた方が簡潔ですね。 大変参考になりました。 ありがとうございます。

その他の回答 (2)

  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.2

画像が重すぎて表示できない等ではありませんか? エラーメッセージなどは表示されませんか? シミュレーターなどでも表示されませんか?

seventhang
質問者

補足

ご回答ありがとうございます。 画像のファイルサイズは小さいものでも表示することができません。 Softbank 913SHでアクセスした場合、「エラーが発生しました。リクエストが不正です」というエラーメッセージが表示されています。 i-mode HTML Simulator IIでは画像を表示することができました。 以上、よろしくお願い致します。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>携帯端末 ここでいう携帯端末とは具体的にどのキャリアのどの機種のことでしょう? 携帯ブラウザは必ずしもPCと同じ仕組みで動いているわけではありません

seventhang
質問者

補足

ご回答ありがとうございます。 現時点でテストをしたのは、Softbank 913SH、au CA39、DoCoMoの端末でも数機種で確認しましたが、画像が表示できた端末は1つもありませんでした。 よろしくお願いいたします。

関連するQ&A