";
$error_count++;
continue;
}
// Ekstrak koordinat dari LineString (feature pertama)
$raw_coords = $data['features'][0]['geometry']['coordinates'];
$formatted_coords = [];
foreach ($raw_coords as $coord) {
$formatted_coords[] = [
'lat' => $coord[1],
'lng' => $coord[0]
];
}
// 1. Hitung Jarak Otomatis
$jarak_km = calculateRouteDistance($formatted_coords);
// 2. Siapkan data database
$json_coords = mysqli_real_escape_string($con, json_encode($formatted_coords));
// Nama rute diambil dari nama file (hilangkan .geojson)
$nama_rute = str_replace(['.geojson', '_'], [' ', ' '], $filename);
$nama_rute = ucwords(trim($nama_rute));
// Default values sesuai keinginan user
$kondisi_medan = "Belum Diobservasi";
$sql = "INSERT INTO routes (nama_rute, jarak, kondisi_medan, titik_koordinat)
VALUES ('$nama_rute', '$jarak_km', '$kondisi_medan', '$json_coords')";
if (mysqli_query($con, $sql)) {
// Pindahkan file ke folder 'done' agar tidak di-import ulang
rename($file_path, $done_dir . $filename);
echo "Berhasil Import: $nama_rute ($jarak_km KM)
";
$success_count++;
} else {
echo "Gagal Import $filename: " . mysqli_error($con) . "
";
$error_count++;
}
}
echo "