99999999.99) { $dist = 99999999.99; } if ($dist < -99999999.99){ $dist = -99999999.99; } if (empty($driver_id) || ($lat == 0.0 && $lng == 0.0)) { printFailure("Invalid payload"); exit; } // --------------------------------------------------------- // التعديل الجوهري هنا: // --------------------------------------------------------- // تم حذف منطق حساب الوقت بواسطة PHP أو الهاتف. // سنستخدم NOW() داخل جملة SQL مباشرة لضمان توقيت UTC موحد. $sql = "INSERT INTO `car_tracks` (`driver_id`,`latitude`,`longitude`,`heading`,`speed`,`distance`,`status`,`created_at`) VALUES (:driver_id, :latitude, :longitude, :heading, :speed, :distance, :status, NOW())"; // 👆 استخدمنا NOW() بدلاً من المتغير $stmt = $con->prepare($sql); $ok = $stmt->execute([ ':driver_id' => $driver_id, ':latitude' => $lat, ':longitude' => $lng, ':heading' => $head, ':speed' => $spd, ':distance' => $dist, ':status' => (string)($status ?? 'on'), // ':created_at' => $created_at_to_use, // 👈 تم حذف هذا السطر لأنه لم يعد مطلوباً ]); if ($ok) { printSuccess("car_tracks saved successfully"); } else { printFailure("Failed to save car track"); } } catch (PDOException $e) { // يفضل عدم طباعة تفاصيل الخطأ للمستخدم النهائي في الإنتاج، لكن لا بأس للـ Debug error_log("car_tracks insert error: " . $e->getMessage()); printFailure("Database error"); } catch (Throwable $e) { error_log("car_tracks insert fatal: " . $e->getMessage()); printFailure("Server error"); } ?>