【携帯サイト制作】第二回 auでUTF-8で作成したページの絵文字が文字化け
先日からの続き。
UTF-8で作成したページがauで文字化けしてしまう・・・orz
色々と試行錯誤していたら・・・
.htaccessから AddType application/xhtml+xml .html
を削除したら大ジョブでした(・∀・)!
じゃぁdocomoはどうするの?
docomoでXHTML&CSSが出来ないのは意味がないので・・・
という矢先、phpファイルでxhtmlを使用しなくてはいけないことに気が付きました。
ぶっちゃけ、モバイルアドセンスなんですが・・・( ´∀` )
.htaccessに以下の行を追加します。
AddType text/xhtml+xml .php
で、やっぱりauがダメダメだったのですが、docomoでは必須であるxhtmlソースの1行目↓を外すと大丈夫でした。
header(‘Content-Type: application/xhtml+xml; charset=UTF-8′);
どうにも面倒になってきたので・・・
xhtmlヘッダ部分をキャリア毎に記述をインクルードさせることにしました。
例えばこんな感じです。。。
>index.php
< ?php
$ua = $_SERVER["HTTP_USER_AGENT"];
if(ereg("DoCoMo",$ua)){
include("/docomo.txt");
}
elseif(ereg("UP.Browser",$ua)){
include("/au.txt");
}
?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
<title>タイトル</title>
</head>
<body>
内容
</body>
</html>
>docomo.txt
<?php
header(‘Content-Type: application/xhtml+xml; charset=UTF-8′);
echo ‘<?xml version="1.0" encoding="UTF-8"?>’."n"
?>
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
>au.txt
<?php
echo ‘<?xml version="1.0" encoding="UTF-8"?>’."n"
?>
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
やった!先生、うまくイッタヨ!
と、つかの間・・・・
これだと、auで絵文字が化けるんですよ・・・orz
i絵文字からUnicodeで入れてもダメづら。。。
さぁ、どうしたものか。
他にもっと良い方法があったら教えてください・・・(´・ェ・`)
以下、随時追記してきますー。
第一回 そろそろ携帯サイトも真面目(XHTML&CSS)に作ってみましょうか。
第二回 auでUTF-8で作成したページの絵文字が文字化け
第三回 3キャリア対応 絵文字変換スクリプトで文字化け解決
第四回 ケータイサイトXHTML&CSSでBLINKとかって。
第五回 auでutf-8のページからformで日本語を渡すと文字化けorz
第六回 メール受信設定をしっかりと案内してますか?
第七回 auのソフトキーラベルについて
第八回 エラーが発生しました。レスポンスが不正です。WJ46386E
私も絵文字で格闘しております…
サイト自体がPC向けで、utf8で作成して公開するつもりなので、携帯もutf8でやろうということにしています。
絵文字の相互変換は、perlのモジュールencode::jp::mobileで対応できるのですが、
問題は、やっぱり、端末側にどうやって、utf8と認識させるか…
そこで、こちらの記事まで辿りついたのですが…
auの公式サイトには、絵文字のUNICODE表が公開されていますが…やはり、ダメなのでしょうか…utf8ではauは絵文字表示はやはりできないのでしょうか…
コメントありがとうございます。
携帯サイトの文字コードの色々は本当にやっかいですよねぇ。。。
私はなんとかhttp://muneto.murakami.biz/web/mobile/xhtml-css-3.phpにて解決となりましたが、少しでも参考になれば幸いです。。。