Vodafoneのユーザーエージェント変更に基づくscm4系CGIの変更

scm4系のCGIでは今までアクセスしてきた端末のユーザーエージェントを調べて、"J-PHON"という単語が含まれていることにより、 Vodafoneであることを認識しておりましたが、
Vodafone【903SH, 902T, 902SH, 802SE, 802SH, 703SH, 702NK(Nokia 6630), 802N, 702sMO, 702MO】などの機種のユーザーエージェントには すでに"J-PHON"は含まれて居ないことをご連絡いただきました http://developers.vodafone.jp/dp/tech_svc/info/useragent.php。Aさま、ありがとうございます。
そこで、ダウンロード出来る方のCGIは2005年8月末には既に対策済みですが、現在ご利用いただいている方々に取り急ぎ変更箇所を 下記のように提示させていただきますので、変更の方、よろしくお願い申し上げます。
取敢えず、"J-PHON"もしくは"Configuration"が含まれていることにより、Vodafoneと認識することにしました。 追記内容は || index($agent,"Configuration")>=0です。


scm4.cgiの場合


# エージェントを取得して、表示の切り替えをする。
    if($agent eq ""){ $agent=$ENV{'HTTP_USER_AGENT'}; }

    if(index($agent,"DoCoMo")>=0){
        $pagedata=&page0;
    }elsif(index($agent,"J-PHON")>=0 || index($agent,"Configuration")>=0){
        $pagedata=&page1;
    }elsif(index($agent,"UP.Browser")>0){
        $pagedata=&page2;
    }elsif(index($agent,"UP.Browser")==0){
        $pagedata=&page3;
    }else{
        $pagedata=&page4;
    }


scm4ex.cgiの場合


# エージェントによって表示の切り替えを行う
    if(   index($agent,"DoCoMo")>=0    ){$pnum=0;$c_mark='i'}
    elsif(index($agent,"J-PHON")>=0 || index($agent,"Configuration")>=0){$pnum=1;$c_mark='v'}
    elsif(index($agent,"UP.Browser")>0 ){$pnum=2;$c_mark='w'}
    elsif(index($agent,"UP.Browser")==0){$pnum=3;$c_mark='h'}
    else{                                $pnum=4;}


scm4ex_p.cgiの場合


# エージェントによって表示の切り替えを行う
    if(   index($agent,"DoCoMo")>=0    ){$pnum=0;$c_mark='i'}
    elsif(index($agent,"J-PHON")>=0 || index($agent,"Configuration")>=0){$pnum=1;$c_mark='v'}
    elsif(index($agent,"UP.Browser")>0 ){$pnum=2;$c_mark='w'}
    elsif(index($agent,"UP.Browser")==0){$pnum=3;$c_mark='h'}
    else{                                $pnum=4;}
上手く行かない場合はelseifの最後の括弧が'){'になっていることをご確認ください。

2005.8.29
[scm4のページへ][HOMEへ]