人気ブログランキング |
(PHP)AjaxUploadで画像が表示されない原因は、、、BOMだった..
(PHP,HTML)AjaxUpload 画像選択時にアップロードしサムネイルを表示を実装していたんですが、なぜかサムネイルが表示されない現象が発生しました。


Ajaxで返すPHP側を絶対パスで返すようにIE8で画像のプロパティを表示すると、 http://hoge.local/http://hoge.local/img/up.jpg といったように正しくパスが解釈されません。
で、Firefoxで確認すると、画像パスが http://hoge.local/%EF%BB%BF%EF%BB%BFhttp://hoge.local/img/up.jpg となっています。

ん? EF BB BF ってどっかでみたことあるぞ と思ったら、(PHP)UTF8でBOMがあるとブラウザ表示時レイアウトがおかしくなるで以前ハマッた現象でした。

そうです。reuireしている別PHPファイル2個が UTF-8 の BOM が付いていたのです。

BOM無しで保存しなおすことで、正しく表示されるようになりましたが、気づくのにかなりの時間がかかってしまいましたorz。

PHPでUTF-8を使う場合は、必ずBOM無しって覚えておかないといけませんね。。。
by Jehoshaphat | 2012-11-06 19:43 | PHP開発


<< (PHP)画像のリサイズ、回転を行う WindowsPCから取り外し... >>