'Normal', 'V' => 'Vegetarian', 'G' => 'Vegan'];
return $types[$char] ?? 'Unknown';
}
$message = '';
$error = '';
$edit_meal = null;
try {
$pdo = db();
// Handle Delete
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['delete_id'])) {
$stmt = $pdo->prepare("DELETE FROM meals WHERE id = ?");
$stmt->execute([$_POST['delete_id']]);
$message = 'Meal deleted successfully!';
}
// Handle Add/Update
elseif ($_SERVER['REQUEST_METHOD'] === 'POST') {
$day_of_week = $_POST['day_of_week'] ?? '';
$meal_type = $_POST['meal_type'] ?? '';
$name = $_POST['name'] ?? '';
$description = $_POST['description'] ?? '';
$id = $_POST['update_id'] ?? null;
if (empty($day_of_week) || empty($meal_type) || empty($name)) {
$error = 'Please fill in all required fields (Day, Meal Type, Name).';
} else {
if ($id) {
// Update
$stmt = $pdo->prepare("UPDATE meals SET day_of_week = ?, meal_type = ?, name = ?, description = ? WHERE id = ?");
$stmt->execute([$day_of_week, $meal_type, $name, $description, $id]);
$message = 'Meal updated successfully!';
} else {
// Insert
$stmt = $pdo->prepare("INSERT INTO meals (day_of_week, meal_type, name, description) VALUES (?, ?, ?, ?)");
$stmt->execute([$day_of_week, $meal_type, $name, $description]);
$message = 'Meal added successfully!';
}
}
}
// Handle Edit - Fetch meal to edit
if (isset($_GET['edit_id'])) {
$stmt = $pdo->prepare("SELECT * FROM meals WHERE id = ?");
$stmt->execute([$_GET['edit_id']]);
$edit_meal = $stmt->fetch(PDO::FETCH_ASSOC);
}
// Fetch all meals for display
$stmt = $pdo->query("SELECT * FROM meals ORDER BY FIELD(day_of_week, 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'), meal_type");
$meals = $stmt->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
$error = 'Database error: ' . $e->getMessage();
$meals = [];
}
?>
Admin - Meal Management
Meal Management
| Day |
Type |
Name |
Description |
Actions |
| No meals found. Add one above! |
|
|
|
|
Edit
|