Пример #1
0
 $slp = 5;
 if ($tid != null) {
     $task = getTask($tid);
     logt("Processing task id = {$tid}");
     $checkexist = $task['checkexist'];
     $nowait = $task['nowait'];
     $warn = array();
     $uid = $task['uid'];
     $ext = $task['ext'];
     $filename = 'uploads/' . $tid . $ext;
     $hangcheck = 5;
     $cntp = 0;
     $cnta = 0;
     $aps = array();
     if (($handle = fopen($filename, 'r')) !== false) {
         $cmtid = getCommentId($task['comment'], true);
         $time = microtime(true);
         switch ($ext) {
             case '.csv':
                 while (($data = fgetcsv($handle, 1000, ';')) !== false) {
                     $cntp++;
                     if ($cntp == 1) {
                         continue;
                     }
                     // Пропуск заголовка CSV
                     $res = db_add_ap($data, $cmtid, $uid);
                     $res == 0 ? $cnta++ : ($warn[$cntp - 1] = $res);
                     if (microtime(true) - $time > $hangcheck) {
                         logt("Status: {$cntp} processed, {$cnta} added (Working)");
                         $db->query("UPDATE tasks SET `lines`={$cntp},`accepted`={$cnta} WHERE `tid`='{$tid}'");
                         $time = microtime(true);
Пример #2
0
db_connect();
$sql = 'SELECT * FROM free WHERE 1 ORDER BY `time` ASC';
$res = $db->query($sql);
if ($res->num_rows == 0) {
    exit;
}
$sql_wifi = 'INSERT INTO ' . BASE_TABLE . ' (`time`,`cmtid`,`IP`,`Port`,`Authorization`,`name`,`RadioOff`,`Hidden`,`NoBSSID`,`BSSID`,`ESSID`,`Security`,`WiFiKey`,`WPSPIN`,`LANIP`,`LANMask`,`WANIP`,`WANMask`,`WANGateway`,`DNS1`,`DNS2`,`DNS3`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) ON DUPLICATE KEY UPDATE `cmtid`=?,`IP`=?,`Port`=?,`Authorization`=?,`name`=?,`RadioOff`=?,`Hidden`=?,`NoBSSID`=?,`BSSID`=?,`ESSID`=?,`Security`=?,`WiFiKey`=?,`WPSPIN`=?,`LANIP`=?,`LANMask`=?,`WANIP`=?,`WANMask`=?,`WANGateway`=?,`DNS1`=?,`DNS2`=?,`DNS3`=?;';
$wifi = $db->prepare($sql_wifi);
$sql_geo = 'INSERT INTO ' . GEO_TABLE . ' (`BSSID`,`latitude`,`longitude`) VALUES (?,?,?) ON DUPLICATE KEY UPDATE `BSSID`=?,`latitude`=?,`longitude`=?;';
$geo = $db->prepare($sql_geo);
while ($row = $res->fetch_assoc()) {
    $row['comment'] = trim(preg_replace('/\\s+/', ' ', $row['comment']));
    if ($row['comment'] == 'none') {
        $row['comment'] = '';
    }
    $cmtid = getCommentId($row['comment'], true);
    $row['IP'] = _ip2long($row['IP']);
    if ($row['IP'] == 0 || $row['IP'] == -1) {
        $row['IP'] = null;
    }
    $row['Port'] = $row['Port'] == '' ? null : (int) $row['Port'];
    if ($row['Authorization'] == '') {
        $row['Authorization'] = null;
    }
    $row['RadioOff'] = $row['RadioOff'] == '[X]' ? 1 : 0;
    $row['Hidden'] = $row['Hidden'] == '[X]' ? 1 : 0;
    if (ismac($row['BSSID'])) {
        $NoBSSID = 0;
        $row['BSSID'] = mac2dec($row['BSSID']);
    } else {
        $NoBSSID = 1;