99999999.99) { $dist = 99999999.99; } if ($dist < -99999999.99){ $dist = -99999999.99; } if (empty($driver_id) || ($lat == 0.0 && $lng == 0.0)) { jsonError("Invalid payload"); exit; } $created_at = date("Y-m-d H:i:s"); $sql = "INSERT INTO `car_tracks` (`driver_id`,`latitude`,`longitude`,`heading`,`speed`,`distance`,`status`,`created_at`) VALUES (:driver_id,:latitude,:longitude,:heading,:speed,:distance,:status,:created_at)"; $stmt = $con->prepare($sql); $ok = $stmt->execute([ ':driver_id' => $driver_id, ':latitude' => $lat, ':longitude' => $lng, ':heading' => $head, ':speed' => $spd, ':distance' => $dist, // ← now DECIMAL(10,2)-friendly ':status' => (string)($status ?? 'on'), ':created_at' => $created_at, ]); if ($ok) { jsonSuccess(null, "car_tracks saved successfully"); } else { jsonError("Failed to save car track"); } } catch (PDOException $e) { error_log("car_tracks insert error: " . $e->getMessage()); jsonError("Database error"); } catch (Throwable $e) { error_log("car_tracks insert fatal: " . $e->getMessage()); jsonError("Server error"); }