prepare($sql); $stmt->execute([ ':name' => $name, ':drone' => $drone, ':status' => $status, ':mission_date' => $mission_date, ]); } break; case 'update': $id = $_POST['mission_id'] ?? null; $name = $_POST['name'] ?? ''; $drone = $_POST['drone'] ?? ''; $status = $_POST['status'] ?? ''; $mission_date = $_POST['mission_date'] ?? ''; if ($id && $name && $drone && $status && $mission_date) { $sql = "UPDATE missions SET name = :name, drone = :drone, status = :status, mission_date = :mission_date WHERE id = :id"; $stmt = $pdo->prepare($sql); $stmt->execute([ ':id' => $id, ':name' => $name, ':drone' => $drone, ':status' => $status, ':mission_date' => $mission_date, ]); } break; case 'delete': $id = $_POST['mission_id'] ?? null; if ($id) { $sql = "DELETE FROM missions WHERE id = :id"; $stmt = $pdo->prepare($sql); $stmt->execute([':id' => $id]); } break; } // Redirect to avoid form resubmission on refresh header("Location: index.php"); exit; } catch (PDOException $e) { // For a real app, you'd log this error instead of dying die("Database error: " . $e->getMessage()); } } // Fetch all missions for display try { $pdo = db(); $stmt = $pdo->query("SELECT id, name, drone, status, DATE_FORMAT(mission_date, '%Y-%m-%d') as mission_date FROM missions ORDER BY mission_date DESC"); $missions = $stmt->fetchAll(); } catch (PDOException $e) { die("Error fetching missions: " . $e->getMessage()); } function getStatusClass($status) { switch (strtolower($status)) { case 'completed': return 'status-completed'; case 'in progress': return 'status-in-progress'; case 'scheduled': return 'status-pending'; default: return 'status-pending'; } } ?> AgroDrone Control - Mission Dashboard

AgroDrone Control

Welcome to your mission control center

Mission Dashboard

Mission Name Drone Status Date Actions
No missions found. Create one to get started!
View