がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

DoCoMoさんのiモードIDの取得:PHP編

んと。ちょいと調査してたので、そのまま知識共有。


とりあえず公式Pageから。
http://www.nttdocomo.co.jp/service/imode/make/content/ip/
んで、そこに載っていないネタをいくつか。


まず。PHPでは

$s = getenv('HTTP_X_DCMGUID');

で取得いけます。環境によっては$_SERVERとか$_ENVとかいけるんだろうけどしらにゃい。


んで、送出条件ですが。
まず、URIの引数に「guid=on」を入れた場合、大文字小文字に関係なく出てきます。
問題は、formのときです。


まずOKパターン。

<FORM action="./t.php?GUID=ON" method="post">
<INPUT type="submit" value="ぽちっとな">
</FORM>
<FORM action="./t.php">
<INPUT type="hidden" name="guid" value="on">
<INPUT type="submit" value="ぽちっとな">
</FORM>

次にNGパターン。

<FORM action="./t.php?GUID=ON">
<INPUT type="submit" value="ぽちっとな">
</FORM>
<FORM action="./t.php"  method="post">
<INPUT type="hidden" name="guid" value="on">
<INPUT type="submit" value="ぽちっとな">
</FORM>

なんかこぉ…規則性が見えるような見えないような。


通常、データはPOSTで取ることが多いと思うのですが。その場合「hiddenに設定しても見てくれない」という問題があります。
また、いつもながら「SSLの時には取得できない」です。httpなPageで適宜GUIDを捕捉してください。


いぢょ。