query("SELECT * FROM subjects ORDER BY name ASC"); while ($r = $res->fetch_assoc()) { $label = $r['name']; if (!empty($r['teacher'])) $label .= " ({$r['teacher']})"; if (!empty($r['room'])) $label .= " ({$r['room']})"; $subjects[] = ['id' => $r['id'], 'label' => $label]; } // --- Salvataggio orario --- if ($_SERVER["REQUEST_METHOD"] === "POST" && isset($_POST['class_id']) && isset($_POST['subject'])) { $class_id = intval($_POST['class_id']); if ($class_id > 0) { // Cancella solo l'orario di questa classe $conn->query("DELETE FROM timetable WHERE class_id=$class_id"); foreach ($_POST['subject'] as $day => $hours) { foreach ($hours as $hour => $sub_ids) { foreach ($sub_ids as $subject_id) { $subject_id = intval($subject_id); if (!empty($subject_id)) { $conn->query("INSERT INTO timetable (class_id, day, hour, subject_id) VALUES ($class_id, '" . $conn->real_escape_string($day) . "', $hour, $subject_id)"); } } } } header("Location: timetable.php?class_id=$class_id&saved=1"); exit; } } // --- Selezione classe corrente --- $class_id = isset($_GET['class_id']) ? intval($_GET['class_id']) : 0; // --- Precaricamento dati orario --- $preselectedData = []; if ($class_id > 0) { $res = $conn->query("SELECT * FROM timetable WHERE class_id=$class_id"); while ($r = $res->fetch_assoc()) { $preselectedData[$r['day']][$r['hour']][] = $r['subject_id']; } } ?> Gestisci Orario

Gestisci Orario

⬅ Torna al Dashboard
Classe:

0): ?> "; echo ""; foreach ($days as $day) { $preselected = $preselectedData[$day][$hour] ?? ['']; echo ""; } echo ""; } ?>
Ora Lunedì Martedì Mercoledì Giovedì Venerdì Sabato
{$hour}ª ora"; echo "
"; foreach ($preselected as $subject_id) { echo "
"; echo ""; echo ""; echo "
"; } echo ""; echo "
"; echo "

✅ Orario salvato con successo!

Nota: Questa pagina si vede meglio da computer desktop. Se sei da computer, puoi ignorare questo messaggio.

Copyright (C) 2025 EmmeV. - Released under GNU AGPL 3.0 License.