Vodafoneの携帯電話から見れるページを作る。
携帯電話から掛けてきているか調べる。REMOTE_HOST, REMOTE_ADDR, HTTP_USER_AGENTが使える。
REMOTE_HOST = wgp2proxykn01.skyweb.jp-k.ne.jp REMOTE_ADDR = 210.146.60.204 HTTP_USER_AGENT = J-PHONE/3.0/J-SH06
普通はHTTP_USER_AGENTを使う。フォームでpostメソッドを使いたいときはJ-PHONE/3.0でないといけないらしい。
WebサーバーによってはREMOTE_HOSTが取れないが,そのときはREMOTE_ADDRから名前を引けばREMOTE_HOSTと同じホスト名が得られる。ホスト名は,".jp-[tkqc].ne.jp"で終わる。
Vodafone Live! のページはHTMLもどきで書けばいい。Vodafoneが自動的にMML (Mobile Markup Language) に変換してくれる。文字コードはEUC-JPで問題ない。
HTML 4.01との違い(一部);
inputタグのmode属性値(入力モード)
属性値 | 意味 |
---|---|
hiragana | 全角ひらがな・漢字(デフォルトモード) |
katakana | 全角カタカナ |
alphabet | 半角英字・記号 |
numeric | 半角数字 |
HTMLとそんなに違わない。レンダリングで気付いたのはこんなの。
とにかく画面が非常に狭いのが困る。私の機種だと,全角で横8字(半角16字)×縦7行しかない。フォームを使うとさらに表示できる分量が減る。また,文字入力が大変。文章の入力には使いたくない。
仮入力と割り切って,PCで補うことを考えた方がよさそう。PCでもできることなら携帯を使う意味はない。
2004.02.24更新。
PC用では,ファイルをアップロードするときに,次のようなHTMLを書く。
<form method="post" enctype="multipart/form-data" action="./up-cgi.rb"> ファイル:<input type="file" name="d"> <input type="submit"> </form>
Vodafone Live!は,form[method="post"]をサポートするが,input[type="file"]をサポートしない。そのため,上記のようなHTMLでは上手くいかない。ケータイで撮った写真をアップロードするには,別の方法(メールなど)でやらないといけない。
J-PHONEではWebサーバーの認証には対応していない。単に401エラーで返る。クッキーにも対応していない。
認証を行うには,自分でコードを書く必要がある。隠蔽(いんぺい)コントロールを使って,セッション管理を行う。