• 締切済み

携帯キャリア判断

昔貰った携帯のキャリア判断のPHPなのですが最新版のものが作りたくていろいろと探してますが見つかりません… 下記に記載されているPHPで詳しい方解説、助言または参考サイトを教えていただけると助かります。 今やろうと思っているのはau,docoo,SoftBankが正しく振り分けられているかの確認とイーモバイル、ウィルコム、iフォンなどの項目を追加することです。 よろしくお願いいたします。 ↓携帯キャリア判断 <?php if ($_REQUEST['butaman']){ $career = $_REQUEST['butaman']; return; } $career = check_host_career(); if($career == 'pc'){ if($_COOKIE['safe'] == 'anzen'){ setcookie('safe','anzen',(time() + (60*60*24*30))); $career = 'master'; } } //-------------------------------------------------------------- //ホストをチェックする関数 function check_host_career(){ $REMOTE_HOST = gethostbyaddr($_SERVER['REMOTE_ADDR']); if (ereg("\.(ido|ezweb)\.ne\.jp$",$REMOTE_HOST)) { $ret = 'au'; /*if (ereg("^KDDI",$HTTP_USER_AGENT)) { // EZweb WAP2.0 端末用の処理 } else { // EZweb 旧端末用の処理 }*/ } elseif ($REMOTE_HOST == 'pdxcgw.pdx.ne.jp') { // H" 用の処理 $ret = 'ejji'; } elseif (ereg("\.docomo\.ne\.jp$",$REMOTE_HOST)) { // i-mode 用の処理 $ret = 'docomo'; } elseif (ereg("\.jp-[ckqt]\.ne\.jp$",$REMOTE_HOST)) { // J-SKY 用の処理 $ret = 'j-sky'; } elseif (ereg("\.pipopa\.ne\.jp$",$REMOTE_HOST)) { // L-mode 用の処理 $ret = 'l-mode'; } elseif (ereg("\.softbank\.ne\.jp$",$REMOTE_HOST)) { // softbank 用の処理 $ret = 'softbank'; } elseif (ereg("\.vodafone\.ne\.jp$",$REMOTE_HOST)) { // vodafone 用の処理 $ret = 'vodafone'; } elseif (ereg("\.emnet\.ne\.jp$",$REMOTE_HOST)) { // イーモバイル 用の処理 $ret = 'e-mobile'; } else { // それ以外 $ret = 'pc'; } //返す値 return $ret; } ?>

  • PHP
  • 回答数1
  • ありがとう数4

みんなの回答

  • kaze2com
  • ベストアンサー率50% (6/12)
回答No.1

「携帯 キャリア USER_AGENT」「携帯 キャリア 振り分け」 などで、検索するとたくさん出てくると思います。

参考URL:
http://ke-tai.org/

関連するQ&A

  • キャリアのメールアドレスと同じサブドメインの利用って。

    [ななメール]docomo.ne7.jp や [メールを関西弁にするサービス]docomo.ne6.jp 等のようにキャリアの[docomo][softbank][ezweb]の文字を使う場合は 商標等の法律には触れないのでしょうか? 利用に際して各キャリアに申請を行えば良いというものなのか、全くドメインが違うから問題がないのか、どこに聞けばよいか分からずこちらに書き込みいたしました。 ご存知の方がいらっしゃいましたら、ご教示いただきたく存じます。

  • CGIにてソフトバンクがPCとして認識されます。

    掲示板のCGIなのですが、ソフトバンクではPC画面へ飛ばされてしまいます。下記の部分あたりではないかと思うのですが、書き直しで解決できるのでしょうか?このCGIを使いたいので、お願い致します。 #▼ホスト名・UA取得 $HOST = $ENV{'REMOTE_HOST'}; $ADDR = $ENV{'REMOTE_ADDR'}; $UA = $ENV{'HTTP_USER_AGENT'}; $SN = $ENV{'HTTP_X_UP_SUBNO'}; if ($UA =~ /^DoCoMo\/\d/) { $AGEN = "i-mode"; }elsif ($UA =~ /^Vodafone\/\d/) { $AGEN = "Vodafone"; }elsif (($UA =~ 'UP.B') && ($SN ne "")){ $AGEN = "AU"; }else { $AGEN="PC";} if ($UA =~ /Mozilla\/|MSIE|Netscape|Opera|Lynx|AOL|Gecko/) {$AGEN="PC";} if ($HOST eq '') { $HOST = $ADDR; } if ($HOST eq $ADDR) { $HOST = gethostbyaddr(pack('C4',split(/\./,$HOST)),2) || $ADDR; }

    • 締切済み
    • CGI
  • 携帯サイトのブックマークのタグは?

    各キャリア毎【i-mode/Vodafone Live!/EZweb】の携帯サイト内にブックマーク(お気に入り)機能を設けたいのですが、それぞれどのようなタグで記述すればいいのか教えてください?

  • ソフトバンクのUSERAGENTうまく取得できない

    下記のようにUser-Agentを取得し、 各キャリア別に振り分けているんですが、 ドコモ、kddi、PCはきちんと判定してそれぞれを 表示してくれますが、 ソフトバンク、ボーダフォン、j-phoneがうまく 判定してくれません。 ソフトバンクのソフト(ウェブコンテンツビューア)だと パソコン版が表示され、実際の携帯でみるとau画面が表示されて しまいます。 どなたかお力をおかしください。 <? $header = getallheaders(); $agent = $header["User-Agent"] ; if(ereg("DoCoMo",$agent)){ header("Location: http://www.aaa.com/mobi/i/index.html"); exit; } elseif(ereg("UP.Browser",$agent)){ header("Location: http://www.aaa.com/mobi/e/index.html"); exit; } elseif(ereg("SoftBank",$agent)){ header("Location: http://www.aaa.com/mobi/v/index.html"); exit; } elseif(ereg("Vodafone",$agent)){ header("Location: http://www.aaa.com/mobi/v/index.html"); exit; } elseif(ereg("J-PHONE",$agent)){ header("Location: http://www.aaa.com/mobi/v/index.html"); exit; } else{ header("Location: http://www.aaa.com/mobi/home.html"); exit; } ?>

    • ベストアンサー
    • PHP
  • i.softbank.jpはキャリアメールになる?

    SoftBankに乗り換えしました。 アドレスがi.softbank.jpとsoftbank.ne,jpがあります。 前者はPC用、後者は携帯用として案内されました。 よく人によっては、携帯キャリア以外からのメールは 届かないように設定しているひとがいると思います。 もしそのような設定にしている人に前者のドメインを使って メールを送ると届かないのでしょうか?

  • 携帯☆各キャリア対応のHPを作るこつ教えてください

    こんにちわ。 私自身はVODAFONEですが、i-mode、ez-webと3社対応のサイトを作りたいと思っています。 お仕事でホームページを作ったり、個人的にもVODAFONEむけのページ(絵文字などもいれて)も作れるのですが、他社にも対応をしたものを作りたいので、サイトを作る上での注意点やこつなどありましたら教えてください。 3社の対応ファイル形式(たとえばi-modeならgif・・とか)や対応タグなどがわかりやすく比較されたサイトがありましたら教えていただきたいです。 ひとつ比較表を見つけたのですが、古いもので^^;あまり参考になりませんでした(笑) ちなみに・・・3社を見分ける方法としては ●トップページに「i-modeの方はこちら」といったようにメニューをつくる ●もともとアドレスをかえておく 「i-modeの方はhttp://*******.jp/i/」 の2つの方法しかないでしょうか? 同じアドレスにどのキャリアの携帯がアクセスしても画像やそれぞれの絵文字が見ることってできないですか? いろいろ質問して申し訳ないですが、なんでもいいので、ヒント、こつ、などなど教えてくださいM(__)M

    • ベストアンサー
    • HTML
  • 有名キャリアのメアドを取得する方法を教えて下さい。

    自分はAndroidやIOSなどの機器は持っていないです。 BluestacksというPC上でAndroidを動かせるアプリケーション をインストールして仮想のAndroid端末として使っているのですが あるアプリの会員登録にスマホOSのメアドが必要なので捨てメアド を取得できるアプリを入れて登録しようとしたら出来ませんでした。 PCブラウザでAU公式HPに行きキャリアメアドが取得できるとありましたが 入会特典みたいなものだったので出来ませんでした。 AUやソフトバンク、ドコモなどのスマホメールアドレス、又は下記に 記載しているメアドの無料で直接取得できる方法を教えてください。 @p.vodafone.ne.jp @s.vodafone.ne.jp @n.vodafone.ne.jp @k.vodafone.ne.jp @r.vodafone.ne.jp @c.vodafone.ne.jp @h.vodafone.ne.jp @d.vodafone.ne.jp @t.vodafone.ne.jp @disney.ne.jp @i.softbank.jp @softbank.ne.jp @ezweb.ne.jp @docomo.ne.jp 以上です。 何卒よろしくお願いします。

  • リダイレクト転送について

    URL一つで使用端末の種類別のURLに飛ばしたいのですが CGIぼんさんのところのUser Agent を使った方法のを採用したいと考えています。 # User Agent によるキャリア判別 @user_agent = split(/\//,$ENV{'HTTP_USER_AGENT'}); if ($user_agent[0] eq 'ASTEL') { # ドットi 用の処理 } elsif ($user_agent[0] eq 'UP.Browser') { # EZweb 旧端末用の処理 } elsif ($user_agent[0] =~ /^KDDI/) { # EZweb WAP2.0 対応端末用の処理 } elsif ($user_agent[0] eq 'PDXGW') { # H" 用の処理 } elsif ($user_agent[0] eq 'DoCoMo') { # i-mode 用の処理 } elsif ($user_agent[0] eq 'J-PHONE') { # J-SKY 用の処理 } elsif ($user_agent[0] eq 'L-mode') { # L-mode 用の処理 } else { # それ以外 } 具体的にはどのような記述にしてどこにアップすればよいのでしょうか? 初心者なので御教授戴ければ幸いです

    • ベストアンサー
    • CGI
  • PHPのソース内でのVodafone絵文字の扱い方

    PHPで、DoCoMo,Vodafone,auの3機種の絵文字を出し分けるファンクションを書いていました。 function emoji($imode,$vodafone,$ez){ $ua = $_SERVER["HTTP_USER_AGENT"]; if(ereg("DoCoMo",$ua)){ print $imode; }else if(ereg("J-PHONE",$ua)){ print $vodafone; }else if(ereg("Vodafone",$ua)){ print $vodafone; }else if(ereg("UP.Browser",$ua)){ print "<IMG LOCALSRC=".$ez." />"; } } というファンクションを定義し、 <?php emoji(ドコモの絵文字,Vodafoneの絵文字,EZの絵文字番号); ?> と書けば、アクセスしたキャリアによって絵文字を出し分けるしくみです。 しかし、Vodafoneの絵文字のコードが特殊なため、エラーになってしまいます。 $記号が含まれているせいかな?と思って $の前に\を入れてみたりもしましたが、ダメでした。 何かよい回避方法はありますでしょうか?

    • ベストアンサー
    • PHP
  • 携帯で携帯サイトを閲覧すると、なぜかPCサイトが表示されます。

    携帯で携帯サイトを閲覧すると、なぜかPCサイトが表示されます。 お世話なります。素人ですので説明にいたらない点が多々あると思いますが、どうか宜しくお願いします。 タイトルが分かりずらくてすみません。どういったことかといいますと、携帯から直接アドレスをひくと自分の携帯サイトが表示されるのに、auのEZwebのau oneトップから自分の携帯サイトを検索し表示させますと、なぜか、自分のPCサイトに飛んでしまいます。 なぜでしょうか? 以下の記述のindex.phpで同じドメインで携帯へ飛ばしています。 <?php /////////////////////////////////////////▼初期処理▼ //http://から始まるURLを指定 $docomo = "http://www.abc.com/m/index.html"; //ドコモの場合 $au = "http://www.abc.com/m/index.html"; //auの場合 $softbank = "http://www.abc.com/m/index.html"; //ソフトバンクの場合 $msie = "http://www.abc.com/index.html"; //IEの場合 $Netscape = "http://www.abc.com/index.html"; //Netscapeの場合 $opera = "http://www.abc.com/index.html"; //Operaの場合 $firefox = "http://www.abc.com/index.html"; //Firefoxの場合 $pc = "http://www.abc.com/index.html"; //上記機種以外 /////////////////////////////////////////▲初期処理終端▲ /////////////////////////////////////////▼携帯判別▼ if(isset($_SERVER['HTTP_USER_AGENT'])){ $user_agent = $_SERVER['HTTP_USER_AGENT']; if(eregi("DoCoMo",$user_agent)){header("Location: $docomo");} elseif(eregi("UP\.Browser",$user_agent)){header("Location: $au");} elseif(eregi("J-PHONE",$user_agent)){header("Location: $softbank");} elseif(eregi("Vodafone",$user_agent)){header("Location: $softbank");} elseif(eregi("SoftBank",$user_agent)){header("Location: $softbank");} elseif(eregi("J-EMULATOR",$user_agent)){header("Location: $softbank");} elseif(eregi("MSIE",$user_agent)){header("Location: $msie");} elseif(eregi("Netscape",$user_agent)){header("Location: $netscape");} elseif(eregi("Opera",$user_agent)){header("Location: $opera");} elseif(eregi("Firefox",$user_agent)){header("Location: $firefox");} else{header("Location: $pc");} }else{ print <<<END <html><body> HTTP_USER_AGENT Error<br /><br /> ユーザーエージェントが読み込めませんでした。<br /> </body></html> END; } /////////////////////////////////////////▲携帯判別終端▲ ?> あと、なぜかindex.phpよりindex.htmlを先によんでしまうようなので、.htaccessで以下のように記述してindex.phpを先に読ませています。 DirectoryIndex index.php index.html 宜しくお願いします。

    • ベストアンサー
    • PHP

専門家に質問してみよう