機種名 $auarray = array("TS35" => "neon","TS34" => "W41T","SA36" => "W41SA","KC35" => "W41K","HI36" => "W41H" ,"SN34" => "W41S","CA33" => "W41CA","HI34" => "PENCK","SA35" => "W33SA","TS33" => "W32T" ,"SA34" => "W32SA","KC34" => "W32K","HI35" => "W32H","SN35" => "W32S(Suica対応)" ,"SN33" => "W32S","CA32" => "W31CA","TS32" => "W31T","SN32" => "W31S","KC33" => "W31K" ,"SA33" => "W31SA","SA32" => "W22SA","HI33" => "W22H","CA31" => "W21CA/Ⅱ","SA31" => "W21SA" ,"TS31" => "W21T","SN31" => "W21S","KC32" => "W21K","HI32" => "W21H","KC31" => "W11K" ,"HI31" => "W11H","ST29" => "Sweets pure","CA28" => "G'z ONE TYPE-R","ST26" => "Sweets" ,"ST25" => "talby","ST2A" => "A5520SA","ST28" => "A5518SA" ,"ST22" => "INFOBAR","TS2C" => "A5517T","TS2B" => "A5516T","KC27" => "A5515K" ,"ST27" => "A5514SA","CA27" => "A5512CA","TS2A" => "A5511T","TS29" => "A5509T" ,"ST24" => "A5507SA","TS28" => "A5506T","SA27" => "A5505SA","TS27" => "A5504T" ,"SA26" => "A5503SA","KC24" => "A5502K","KC25" => "A5502K","TS26" => "A5501T" ,"CA26" => "A5407CA","CA25" => "A5406CA","ST23" => "A5405SA","SN25" => "A5404S" ,"CA24" => "A5403CA","SN24" => "A5402S","CA23" => "A5401CA","ST21" => "A5306ST" ,"KC22" => "A5305K","TS24" => "A5304T","HI24" => "A5303H II","HI23" => "A5303H" ,"CA22" => "A5302CA","TS23" => "A5301T","TS21" => "C5001T","PT21" => "A1405PT" ,"SN29" => "A1404S","KC26" => "A1403K","SN27" => "A1402SⅡ","SN28" => "A1402SⅡカメラ無し" ,"SN26" => "A1402S","KC23" => "A1401K","SA28" => "A1305SA","TS25" => "A1304T" ,"SA25" => "A1303SA","SA24" => "A1302SA","SN23" => "A1301S","SN22" => "A1101S" ,"SA22" => "A3015SA","SN21" => "A3014S","TS22" => "A3013T","CA21" => "A3012CA" ,"SA21" => "A3011SA","MA21" => "C3003P","KC21" => "C3002K","HI21" => "C3001H" ,"ST14" => "A1014ST","KC15" => "A1013K","KC14" => "A1012K","ST13" => "A1011ST" ,"SN17" => "C1002S","SY15" => "C1001SA","CA14" => "C452CA","HI14" => "C451H" ,"TS14" => "C415T","KC13" => "C414K","SN15" => "C413S","SN16" => "C413S" ,"SY14" => "C412SA","ST12" => "C411ST","TS13" => "C410T","CA13" => "C409CA" ,"MA13" => "C408P","HI13" => "C407H","SN13" => "C406S","SY13" => "C405SA" ,"SN12" => "C404S","SN14" => "C404S","ST11" => "C403ST","DN11" => "C402DE" ,"SY12" => "C401SA","KC12" => "C313K","CA12" => "C311CA","TS12" => "C310T" ,"HI12" => "C309H","MA11" => "C308P","MA12" => "C308P","KC11" => "C307K" ,"SN11" => "C305S","SY11" => "C304SA","CA11" => "C303CA","HI11" => "C302H" ,"TS11" => "C301T","DN01" => "C202DE","HI01" => "C201H","HI02" => "C201H" ,"TST9" => "TT51","KCU1" => "TK41","SYT5" => "TS41","KCTD" => "TK40" ,"TST8" => "TT32","TST7" => "TT31","KCTC" => "TK31","SYT4" => "TS31" ,"KCTB" => "TK23","KCTA" => "TK22","TST6" => "TT22","KCT9" => "TK21" ,"TST5" => "TT21","TST4" => "TT11","KCT8" => "TK12","SYT3" => "TS11" ,"KCT7" => "TK11","MIT1" => "TD11","MAT3" => "TP11","KCT6" => "TK05" ,"TST3" => "TT03","KCT5" => "TK04","KCT4" => "TK03","SYT2" => "TS02" ,"MAT1" => "TP01","MAT2" => "TP01","TST2" => "TT02","KCT3" => "TK0K" ,"KCT2" => "TK02","KCT1" => "TK01","TST1" => "TT01","SYT1" => "TS01"); // auXHTML機種判別 if(preg_match("/\.ezweb\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ if(preg_match("/[KDDI-]([0-9A-Z]{4})/",$uagent,$match)){ $device = $match[1]; $kishu = $auarray[$device]; if($kishu == "") $kishu = "KDDI-".$device; } } // auHDML,Tu-Ka機種判別 else if(preg_match("/^UP\.Browser.*-([0-9A-Z]){4}/",$uagent,$match)){ $device = $match[1]; $kishu = $auarray[$device]; if($kishu == "") $kishu = $device; } // MOVA機種判別 else if(preg_match("/\.docomo\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ list(,,$kishu,) = explode("/", $uagent); // FOMA機種は特別 if($kishu == ""){ if(preg_match("/^DoCoMo\/2\.0\s([0-9a-zA-Z]+)/",$uagent,$match)){ $kishu = $match[1]; if($kishu == 'MST') $kishu = 'SH2101V'; }else{ // それでも取得できないとき $kishu = 'DoCoMo'; } } } // voda機種判別 else if(preg_match("/\.jp-[kcqt]\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ $kishu = $_SERVER['HTTP_X_JPHONE_MSNAME']; } else $kishu = 'PC'; return $kishu; } //キャリアコード取得 function get_career_id($agent){ if(preg_match("/\.docomo\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR'])) || preg_match("/\.ppp\.prin\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))) $career = "d"; else if(preg_match("/\.ezweb\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR'])) || preg_match("/^UP\.Browser.*-([0-9A-Z]){4}/",$agent)) $career = "e"; else if(preg_match("/\.jp-[kcqt]\.ne\.jp$/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))) $career = "v"; else if(preg_match("/iPhone/i",$agent) || preg_match("/Android/i",$agent)) $career="smp"; else $career = "pc"; return $career; } //携帯個体識別番号取得 function get_mobile_pr($ua){ // DoCoMo if(preg_match("/.docomo.ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ preg_match("/ser([a-zA-Z0-9]+)/",$ua, $dprg); if(strlen($dprg[1]) === 11){ $ser = $dprg[1]; }else if(strlen($dprg[1]) === 15){ $ser = $dprg[1]; preg_match("/icc([a-zA-Z0-9]+)/",$ua, $dpeg); if(strlen($dpeg[1]) === 20) $icc = $dpeg[1]; else $icc = ''; }else{ $ser = ''; $icc = ''; } //iモードID取得 2008/4/9 if(!$ser) $ser = $_SERVER["HTTP_X_DCMGUID"]; } // vodafone else if(preg_match("/.jp-[kcqt].ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ if(preg_match("/SN([a-zA-Z0-9]+)/",$ua,$vprg)) $srn = $vprg[1]; else $srn = ''; } // au elseif(preg_match("/.ezweb.ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))) $ezn = $_SERVER['HTTP_X_UP_SUBNO']; $utnary = array($ser,$icc,$srn,$ezn); return $utnary; } function get_mobile_pr_fix($ua){ // DoCoMo if(preg_match("/.docomo.ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ preg_match("/ser([a-zA-Z0-9]+)/",$ua, $dprg); if(strlen($dprg[1]) === 11){ $re = $dprg[1]; }else if(strlen($dprg[1]) === 15){ $re = $dprg[1]; preg_match("/icc([a-zA-Z0-9]+)/",$ua, $dpeg); if(strlen($dpeg[1]) === 20) $re = $dpeg[1]; else $re = ''; }else{ $re = ''; } //iモードID取得 2008/4/9 if(!$re) $re = $_SERVER["HTTP_X_DCMGUID"]; } // vodafone else if(preg_match("/.jp-[kcqt].ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))){ if(preg_match("/SN([a-zA-Z0-9]+)/",$ua,$vprg)) $re = $vprg[1]; else $re = ''; } // au elseif(preg_match("/.ezweb.ne.jp/",@gethostbyaddr($_SERVER['REMOTE_ADDR']))) $re = $_SERVER['HTTP_X_UP_SUBNO']; return $re; } function get_aff_id() { $length = 8; $tane = $tane + 0; $mtime = microtime(); $mtime = substr( $mtime, 2, 8); srand( $mtime + $tane ); for( $i = 0; $i < $length; $i++ ){ $rd = mt_rand()%3; if(!$rd) $pass .= chr(mt_rand(48, 57)); else if($rd == 1) $pass .= chr(mt_rand(65, 90)); else if($rd == 2) $pass .= chr(mt_rand(97, 122)); } $pass = $pass.substr(time(),-8); return $pass; } function decode_id($id, $type){ switch($type){ case 'm_owner_id': if(substr($id,0,2)=="PT") $id = substr($id,2); break; case 'm_id': if(substr($id,0,2)=="PS") $id = substr($id,2); break; case 'c_owner_id': if(substr($id,0,2)=="MC") $id = substr($id,2); break; case 'c_id': if(substr($id,0,2)=="AD") $id = substr($id,2); break; case 'item_id': if(substr($id,0,2)=="LK") $id = substr($id,2); break; case 'p_id': if(substr($id,0,2)=="CV") $id = substr($id,2); break; case 'action_id': if(substr($id,0,2)=="AC") $id = substr($id,2); break; default: } settype($id,"integer"); return $id; } ?>