= ? AND U.ip_int <= ?)"; $params[] = ip2long($cidr_range[0]); $params[] = ip2long($cidr_range[1]); } else { $cidr_filter = ''; } } else { $cidr_filter = ''; } print_ip_submenu($page_url); ?>

- '') AND (U.ip_int BETWEEN S.ip_int_start AND S.ip_int_stop) $cidr_filter AND S.office=1 AND U.deleted=0 ORDER BY net,mac,arp_found"; $users = get_records_sql($db_link,$sSQL, $params); $f_subnet=NULL; $f_mac=NULL; $f_id=NULL; $printed = NULL; $f_index = 0; $f_count = 0; foreach ($users as $row) { //инициализируем перебор по первой записи if (empty($f_subnet)) { //сохраняем для обработки $f_subnet = $row['net']; $f_mac=$row['mac']; $f_id=$row['id']; $f_index=0; continue; } //начинаем перебор - проверяем if ($row['net'] === $f_subnet and $row['mac']===$f_mac) { //если первая запись не выводилась - выводим на печать $d_params = $params; if (!isset($printed[$f_id])) { //считаем сколько у нас дублей $dSQL = "SELECT U.id, U.ip, U.mac, U.arp_found FROM user_auth U WHERE U.deleted=0 AND U.mac=? $cidr_filter"; $d_params[]= $f_mac; $doubles = get_records_sql($db_link,$dSQL, $d_params); $f_count = count($doubles); $f_index++; $user = get_record_sql($db_link,"SELECT * FROM user_auth WHERE id=?", [$f_id]); if (empty($user['arp_found']) || is_empty_datetime($user['arp_found'])) { $user['arp_found'] = ''; } if (empty($user['ts']) || is_empty_datetime($user['ts'])) { $user['ts'] = ''; } if (empty($user['changed_time']) || is_empty_datetime($user['changed_time'])) { $user['changed_time'] = ''; } print "\n"; $cl = "data"; print "\n"; print "\n"; print "\n"; print "\n"; if (isset($user['dhcp_hostname']) and strlen($user['dhcp_hostname']) > 0) { print "\n"; } else { print "\n"; } print "\n"; print "\n"; print "\n"; print "\n"; $printed[$f_id] = 1; } //проверяем текущую запись if (!isset($printed[$row['id']])) { $f_index++; $user = get_record_sql($db_link,"SELECT * FROM user_auth WHERE id=?", [$row['id']]); if (empty($user['arp_found']) || is_empty_datetime($user['arp_found'])) { $user['arp_found'] = ''; } if (empty($user['ts']) || is_empty_datetime($user['ts'])) { $user['ts'] = ''; } if (empty($user['changed_time']) || is_empty_datetime($user['changed_time'])) { $user['changed_time'] = ''; } print "\n"; $cl = "data"; print "\n"; print "\n"; print "\n"; print "\n"; if (isset($user['dhcp_hostname']) and strlen($user['dhcp_hostname']) > 0) { print "\n"; } else { print "\n"; } print "\n"; print "\n"; print "\n"; print "\n"; $printed[$row['id']] = 1; } } else { $f_subnet = $row['net']; $f_mac = $row['mac']; $f_id = $row['id']; $f_index = 0; } } print "
" . get_login($db_link,$user['user_id']) . "" . $user['ip'] . "" . expand_mac($db_link,$user['mac']) . "".$user['description']." [" . $user['dhcp_hostname'] . "]".$user['description']."".$user['dns_name']."".$user['ts']."".$user['last_found']."
" . get_login($db_link,$user['user_id']) . "" . $user['ip'] . "" . expand_mac($db_link,$user['mac']) . "".$user['description']." [" . $user['dhcp_hostname'] . "]".$user['description']."".$user['dns_name']."".$user['ts']."".$user['last_found']."
\n"; ?>