Exemple #1
0
function getFloatCoord($coord)
{
    global $db;
    $name = randomStr(12, false);
    if (!QuerySql("CREATE TEMPORARY TABLE `{$name}` (coord FLOAT(12,8))")) {
        return null;
    }
    QuerySql("INSERT INTO `{$name}` (coord) VALUES ({$coord})");
    $res = QuerySql("SELECT coord FROM `{$name}`");
    $row = $res->fetch_row();
    $res->close();
    QuerySql("DROP TABLE `{$name}`");
    return $row[0];
}
Exemple #2
0
function db_ap_exist($NoBSSID, $bssid, $essid, $key)
{
    global $db;
    $result = 0;
    $essid = $db->real_escape_string($essid);
    $key = $db->real_escape_string($key);
    // Проверяем, есть ли эта точка в базе (по BSSID/ESSID/WiFiKey)
    if ($res = QuerySql("SELECT `id` FROM BASE_TABLE WHERE `NoBSSID`={$NoBSSID} AND `BSSID`={$bssid} AND `ESSID`='{$essid}' AND `WiFiKey`='{$key}' LIMIT 1")) {
        $result = $res->num_rows;
        $res->close();
    }
    return $result > 0;
}
Exemple #3
0
             $time = microtime(true);
             while ($row = $res->fetch_row()) {
                 $done++;
                 $bssid = $row[0];
                 $latitude = 0;
                 $longitude = 0;
                 $quadkey = 'NULL';
                 $coords = GeoLocateAP(dec2mac($bssid));
                 if ($coords != '') {
                     $found++;
                     $coords = explode(';', $coords);
                     $latitude = (double) $coords[0];
                     $longitude = (double) $coords[1];
                     $quadkey = base_convert(latlon_to_quadkey($latitude, $longitude, MAX_ZOOM_LEVEL), 2, 10);
                 }
                 QuerySql("UPDATE GEO_TABLE SET `latitude`={$latitude},`longitude`={$longitude}, `quadkey`={$quadkey} WHERE `BSSID`={$bssid}");
                 if (microtime(true) - $time > $hangcheck && $done < $total) {
                     logt("Status: {$done} of {$total}, {$found} found on map (Working)");
                     $time = microtime(true);
                 }
             }
             logt("Status: {$done} of {$total}, {$found} found on map (Done!)");
         }
         $res->close();
         sleep(10);
     }
     break;
     // Обновление ранее не найденных точек
 // Обновление ранее не найденных точек
 case 'recheck':
     require_once 'geoext.php';
Exemple #4
0
 // DNS серверы
 case 'stdns':
     set_time_limit(30);
     $json['result'] = true;
     $json['stat']['top'] = TOP_DNS;
     if (!db_connect()) {
         $json['result'] = false;
         $json['error'] = 'database';
         break;
     }
     if ($res = QuerySql("SELECT COUNT(DISTINCT DNS) FROM (\n\tSELECT DNS1 AS DNS FROM BASE_TABLE WHERE DNS1 != 0 \n\tUNION ALL \n\tSELECT DNS2 AS DNS FROM BASE_TABLE WHERE DNS2 != 0 \n\tUNION ALL \n\tSELECT DNS3 AS DNS FROM BASE_TABLE WHERE DNS3 != 0) DNSTable")) {
         $row = $res->fetch_row();
         $json['stat']['total'] = (int) $row[0];
         $res->close();
     }
     if ($res = QuerySql("SELECT DNS, COUNT(DNS) FROM (\n\tSELECT DNS1 AS DNS FROM BASE_TABLE WHERE DNS1 != 0 \n\tUNION ALL \n\tSELECT DNS2 AS DNS FROM BASE_TABLE WHERE DNS2 != 0 \n\tUNION ALL \n\tSELECT DNS3 AS DNS FROM BASE_TABLE WHERE DNS3 != 0) DNSTable \n\tGROUP BY DNS ORDER BY COUNT(DNS) DESC LIMIT " . TOP_DNS)) {
         $json['stat']['data'] = array();
         while ($row = $res->fetch_row()) {
             $data = array();
             $data[] = (int) $row[1];
             $data[] = _long2ip($row[0]);
             $json['stat']['data'][] = $data;
         }
         $res->close();
     }
     $db->close();
     break;
     // Активные участники (Сидеры)
 // Активные участники (Сидеры)
 case 'stsid':
     set_time_limit(30);
Exemple #5
0
  3WiFi Script for add `quadkey` column to geo tables

 **/
set_time_limit(0);
include 'config.php';
require 'db.php';
require 'quadkey.php';
db_connect();
foreach (array('geo', 'mem_geo') as $geo_table) {
    $sql = "ALTER TABLE `{$geo_table}` \n\t\t\tADD COLUMN `quadkey` BIGINT(20) UNSIGNED DEFAULT NULL, \n\t\t\tDROP INDEX `Coords`, \n\t\t\tADD INDEX (`quadkey`)";
    var_dump($sql);
    if (!$db->query($sql)) {
        echo "Failed to alter table {$geo_table}: ";
        echo "(" . $db->errno . ") " . $db->error;
    }
    $coord_res = QuerySql("SELECT * FROM {$geo_table} \n\t\t\tWHERE `latitude` != 0 AND `longitude` != 0 \n\t\t\tAND `latitude` IS NOT NULL AND `longitude` IS NOT NULL \n\t\t\tAND `quadkey` IS NULL");
    if (!$coord_res) {
        echo "Failed to select from {$geo_table}: ";
        echo "(" . $db->errno . ") " . $db->error;
        exit;
    }
    if (!($stmt = $db->prepare("UPDATE {$geo_table} SET `quadkey`=? WHERE `BSSID`=?"))) {
        echo "Failed to prepare query: (" . $db->errno . ") " . $db->error;
        exit;
    }
    $quadkey = '';
    $bssid = '';
    if (!$stmt->bind_param("ss", $quadkey, $bssid)) {
        echo "Failed to bind params: (" . $stmt->errno . ") " . $stmt->error;
        exit;
    }
Exemple #6
-2
<?php

require_once "conn.php";
require_once "func.php";
$match_way = $_POST['match_way'];
$query_way = $_POST['query_way'];
$search_text = $_POST['search_text'];
$Fields = getFields($query_way);
//CheckStringType($Fields,$search_text);
if ($search_text == '') {
    echo "请输入字符";
} else {
    $sql = QuerySql($match_way, $query_way, $search_text, $Fields);
    //echo $sql."<br/>";
    $res = mysql_unbuffered_query($sql);
    echo "<table border='1'><tr>";
    foreach ($Fields as $value) {
        echo "<th>" . $value . "</th>";
    }
    echo "</tr>";
    while ($row = mysql_fetch_array($res)) {
        echo "<tr onmouseover=\"this.style.backgroundColor='#ffff66';\" onmouseout=\"this.style.backgroundColor='#d4e3e5';\">";
        for ($m = 0; $m < count($Fields); $m++) {
            echo "<td>" . $row[$m] . "</td>";
        }
        echo "</tr>";
    }
    echo "</table>";
    mysql_close($conn);
}