- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:phpでの画像表示)
phpでの画像表示
このQ&Aのポイント
- xamppを使用してphpで画像を表示させる方法やエラーについて調べています。
- 友人のPCでは画像表示ができたことから、xamppの設定に問題がある可能性があると考えています。
- 簡単なプログラムで画像表示を試みましたが、画像が壊れているエラーが発生しました。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ファイルがBOM付きのUTFだったりしませんか?
その他の回答 (3)
noname#244856
回答No.4
readfileだけで表示されたのは、そのファイルのバイナリデータです。 当然表示できない文字は「◆」に「?」が載ったような文字で化けで表示されます。 もしかしてブラウザの問題・・・? http://ameblo.jp/hiroro-chi/entry-10894465064.html
質問者
お礼
解決できました。 ご指摘ありがとうございました。
質問者
補足
ご回答ありがとうございます。 ブラウザはFirefoxとchromeとIEで行っていますがどれも同じ結果です。
- hogehoge78
- ベストアンサー率80% (433/539)
回答No.3
readfileを行うと、つまり普通に該当リソースを出力することになりますが、 一度header関数をコメントアウトして実行されてみてはいかがでしょうか。 jpgの画像のバイナリがそのままブラウザに表示されると思います。 その時点でエラーメッセージが出てくるようであればそのエラーを正せば治ると思います。 ありがちなのが、PHPの警告(fatal errorではなくwarning。推奨されていない記述などの時に出てくるエラー)が出力されてしまっているとかといった出来事だったりします。 いかがでしょうか。
質問者
補足
ご回答ありがとうございます。 エラーメッセージや警告は出なかったのですが、文字化けした文字というか記号が出力されました。
noname#244856
回答No.1
?> の後に改行入ってたりするオチじゃないですよね・・・? そもそもこのようなときは「?>」はバグ防止のために省略するのが普通です。終了タグは必須ではありません。
質問者
補足
ご回答ありがとうございます。 改行・?>を変更して実行してみたのですが、同じ結果でした…
お礼
よく確認したところBOMが付いていました。 本当にありがとうございます。
補足
ご回答ありがとうございます。 BOMはついていないです。 友人のPCで動作していたので、設定の方に問題があるのかなと思っているのですが…。 何かご指摘あればよろしくお願いいたします。