携帯のパーサ誤作動トラップ
来るはずのパラメータが「一部の端末」で飛んでこないよって話。
<form action=hoge.cgi method='post> <input type=hidden name=hoge value='fuga'> <input type=hidden name=foo value='bar'>
上記HTMLはform 要素のmethod 属性のクオートが閉じられていないため、次行のinput 要素をmethod 属性に巻き込んでしまう、かに見える。
ところが多くの携帯端末では要素内、属性値内での改行を処理できないため、望んだとおりに実行される。(つまりhidden 要素がちゃんと送信される。)
当然、改行をちゃんと処理できる端末も存在するため、端末ごとにパラメータが送られたり送られなかったりする。
記述するときにちゃんと気をつけてればいいって話でもあるが、実際忙しいときにはこういったミスも多々起きる。とりわけ携帯対応って話になるとキャリア別にHTMLを用意しなきゃいけなかったり。
ちなみに上記のHTMLだとGET で飛ばす端末が多い。