$stmt->execute(); $row = $stmt->fetch(PDO::FETCH_ASSOC); $asn_cnt = $row['cnt']; $sql = "select count(distinct substring_index(query, '.', -1)) as cnt from pdns"; $stmt = $pdo->prepare($sql); $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_ASSOC); $tld_cnt = $row['cnt']; $sld = load_domains_with_tld($pdo, FALSE); foreach ($sld as $r) { if (!isset($slds[$r['sld']])) { $slds[$r['sld']] = 1; } } $sld_cnt1 = count($slds); $sld = load_domains_with_tld($pdo, TRUE); foreach ($sld as $r) { if (!isset($slds[$r['sld']])) { $slds[$r['sld']] = 1; } } $sld_cnt2 = count($slds); print_header(); echo <<<TTT <table> <tr><td>Distinct entries</td><td>{$entries}</td> <td>Distinct queries</td><td>{$domains}</td></tr> <tr><td>Distinct answers</td><td>{$answers}</td></tr> <tr><td>Min TTL</td><td>{$min_ttl}</td>
$oldest = 0; $youngest = time(); while ($r = $stmt->fetch(PDO::FETCH_ASSOC)) { $data[$cnt] = array('cnt' => $cnt, 'first' => $r['FIRST'], 'last' => $r['LAST'], 'query' => $r['query'], 'answer' => $r['answer'], 'maptype' => $r['maptype']); $cnt++; $oldest = max($oldest, $r['LAST']); $youngest = min($youngest, $r['FIRST']); } $options = array('youngest' => $youngest - 3600, 'oldest' => $oldest + 3600); } elseif ($type == 'sld') { $title = 'Second level domains'; $withtld = false; if ($subtype == 'withtld') { $withtld = true; } $domains = load_domains_with_tld($pdo, $withtld, $blacklist); $slds = array(); foreach ($domains as $r) { if (isset($slds[$r['sld']])) { $slds[$r['sld']]++; } else { $slds[$r['sld']] = 1; } } arsort($slds, SORT_NUMERIC); $slds = array_slice($slds, 0, $TOPLIMIT); $data = array(); foreach ($slds as $k => $r) { $data[] = $r; $labels[] = $k; }