示例#1
0
 function parseUserAgentInfo($db, $detect)
 {
     $parser = Parser::create();
     $result = $parser->parse($detect->getUserAgent());
     //If is not mobile or tablet
     if (!$detect->isMobile() && !$detect->isTablet()) {
         switch ($result->device->family) {
             //Is Bot
             case 'Bot':
                 $type = "4";
                 $result->device->family = "Bot";
                 break;
                 //Is Desktop
             //Is Desktop
             case 'Other':
                 $type = "1";
                 $result->device->family = "Desktop";
                 break;
         }
     } else {
         //If tablet
         if ($detect->isTablet()) {
             $type = "3";
             //If mobile
         } else {
             $type = "2";
         }
     }
     if (PLATFORMS::botCheck($_SERVER['HTTP_X_FORWARDED_FOR'])) {
         $type = "4";
         $result->device->family = "Bot";
     }
     //Select from DB and return ID's
     $mysql['browser'] = $db->real_escape_string($result->ua->family);
     $mysql['platform'] = $db->real_escape_string($result->os->family);
     $mysql['device'] = $db->real_escape_string($result->device->family);
     $mysql['device_type'] = $db->real_escape_string($type);
     //Get browser ID
     $browser_sql = "SELECT browser_id FROM 202_browsers WHERE browser_name='" . $mysql['browser'] . "'";
     $browser_result = _mysqli_query($db, $browser_sql);
     $browser_row = $browser_result->fetch_assoc();
     if ($browser_row) {
         $browser_id = $browser_row['browser_id'];
     } else {
         $browser_sql = "INSERT INTO 202_browsers SET browser_name='" . $mysql['browser'] . "'";
         $browser_result = _mysqli_query($db, $browser_sql);
         $browser_id = $db->insert_id;
     }
     //Get platform ID
     $platform_sql = "SELECT platform_id FROM 202_platforms WHERE platform_name='" . $mysql['platform'] . "'";
     $platform_result = _mysqli_query($db, $platform_sql);
     $platform_row = $platform_result->fetch_assoc();
     if ($platform_row) {
         $platform_id = $platform_row['platform_id'];
     } else {
         $platform_sql = "INSERT INTO 202_platforms SET platform_name='" . $mysql['platform'] . "'";
         $platform_result = _mysqli_query($db, $platform_sql);
         $platform_id = $db->insert_id;
     }
     //Get device model ID
     $device_sql = "SELECT device_id, device_type FROM 202_device_models WHERE device_name='" . $mysql['device'] . "'";
     $device_result = _mysqli_query($db, $device_sql);
     $device_row = $device_result->fetch_assoc();
     if ($device_row) {
         $device_id = $device_row['device_id'];
         $device_type = $device_row['device_type'];
     } else {
         $device_sql = "INSERT INTO 202_device_models SET device_name='" . $mysql['device'] . "', device_type='" . $mysql['device_type'] . "'";
         $device_result = _mysqli_query($db, $device_sql);
         $device_id = $db->insert_id;
         $device_type = $type;
     }
     $data = array('browser' => $browser_id, 'platform' => $platform_id, 'device' => $device_id, 'type' => $device_type);
     return $data;
 }