$fname) { if (afterLast($fname, '.') == 'json') { $tmpFName=$fname; $object = json_decode(file_get_contents($dir . '/' . $fname)); if ($object) { $time = cutBeforeFirst($tmpFName, '_'); $imei = cutBeforeFirst($tmpFName, '_'); $fn = cutBeforeFirst($tmpFName, '.'); if ($fn == 1) { $count=0; $db->beginTransaction(); foreach ($object->data as &$value) { $sql="select * from main.setlocation(1,'$imei',$value->lat,$value->lon,$value->alt,null,null,to_timestamp($value->time)::timestamp without time zone,null);"; try { $res = $db->query($sql); } catch (Exception $ex) { error_log($ex->getMessage()); } while ($row = $res->fetch(PDO::FETCH_ASSOC)) { $count++; } } if(count($object->data)==$count){ $db->commit(); $result=true; }else{ $db->rollBack(); } } if ($fn == 2) { $count=0; $db->beginTransaction(); foreach ($object->data as &$value) { $sql="select * from main.setReading(1,'$imei',$value->sensor_type_id,$value->value,to_timestamp($value->time)::timestamp without time zone,to_timestamp($time)::timestamp without time zone);"; try { $res = $db->query($sql); } catch (Exception $ex) { error_log($ex->getMessage()); } while ($row = $res->fetch(PDO::FETCH_ASSOC)) { $count++; } } if(count($object->data)==$count){ $db->commit(); $result=true; }else{ $db->rollBack(); } } } unlink($dir . '/' . $fname); } } } echo 'OK';