Kleine Änderungen
This commit is contained in:
48
history.php
48
history.php
@@ -5,18 +5,43 @@ include('inc/helpers.php');
|
||||
|
||||
// PHP-Logik für die Löschfunktion
|
||||
if (isset($_GET['action']) && $_GET['action'] == 'delete' && isset($_GET['id'])) {
|
||||
$id = $_GET['id'];
|
||||
$stmt = mysqli_prepare($conn, "DELETE FROM meetings WHERE id = ?");
|
||||
mysqli_stmt_bind_param($stmt, "i", $id);
|
||||
if (mysqli_stmt_execute($stmt)) {
|
||||
// Erfolgreiche Weiterleitung
|
||||
$id = intval($_GET['id']);
|
||||
|
||||
// 🔥 Zuerst abhängige Tabellen bereinigen – in der richtigen Reihenfolge!
|
||||
// 1. Abstimmungen zu Vorschlägen löschen
|
||||
$stmt1 = mysqli_prepare($conn, "DELETE FROM meeting_reschedule_votes WHERE proposal_id IN (SELECT id FROM meeting_reschedule_proposals WHERE meeting_id = ?)");
|
||||
if ($stmt1) {
|
||||
mysqli_stmt_bind_param($stmt1, "i", $id);
|
||||
mysqli_stmt_execute($stmt1);
|
||||
mysqli_stmt_close($stmt1);
|
||||
}
|
||||
|
||||
// 2. Verschiebungsvorschläge löschen
|
||||
$stmt2 = mysqli_prepare($conn, "DELETE FROM meeting_reschedule_proposals WHERE meeting_id = ?");
|
||||
if ($stmt2) {
|
||||
mysqli_stmt_bind_param($stmt2, "i", $id);
|
||||
mysqli_stmt_execute($stmt2);
|
||||
mysqli_stmt_close($stmt2);
|
||||
}
|
||||
|
||||
// 3. Teilnehmerdaten löschen
|
||||
$stmt3 = mysqli_prepare($conn, "DELETE FROM meeting_teilnehmer WHERE meeting_id = ?");
|
||||
if ($stmt3) {
|
||||
mysqli_stmt_bind_param($stmt3, "i", $id);
|
||||
mysqli_stmt_execute($stmt3);
|
||||
mysqli_stmt_close($stmt3);
|
||||
}
|
||||
|
||||
// 4. Jetzt den Termin selbst löschen
|
||||
$stmt4 = mysqli_prepare($conn, "DELETE FROM meetings WHERE id = ?");
|
||||
mysqli_stmt_bind_param($stmt4, "i", $id);
|
||||
if (mysqli_stmt_execute($stmt4)) {
|
||||
header("Location: history.php?status=deleted");
|
||||
exit;
|
||||
} else {
|
||||
// Fehler-Meldung, falls etwas schiefgeht
|
||||
$error_message = "Fehler beim Löschen des Termins.";
|
||||
}
|
||||
mysqli_stmt_close($stmt);
|
||||
mysqli_stmt_close($stmt4);
|
||||
}
|
||||
|
||||
// Funktion zum Abrufen aller Meeting-Details
|
||||
@@ -104,7 +129,6 @@ $colors = mysqli_fetch_all($colors_result, MYSQLI_ASSOC);
|
||||
$all_meetings = get_all_meeting_details($conn);
|
||||
|
||||
include('inc/header.php');
|
||||
|
||||
?>
|
||||
|
||||
<div class="container mt-5">
|
||||
@@ -113,6 +137,13 @@ include('inc/header.php');
|
||||
<h2>Termin-History</h2>
|
||||
</div>
|
||||
|
||||
<?php if (isset($error_message)): ?>
|
||||
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||
<?= htmlspecialchars($error_message) ?>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if (empty($all_meetings)): ?>
|
||||
<div class="alert alert-info text-center" role="alert">
|
||||
Bisher wurden keine Treffen erfasst.
|
||||
@@ -127,7 +158,6 @@ include('inc/header.php');
|
||||
<?php
|
||||
if ($_SESSION['role'] == 'admin') {
|
||||
?>
|
||||
|
||||
<div>
|
||||
<a href="admin/participant.php?id=<?= $meeting_id ?>&source=history" style="text-decoration: none; border: none; outline: none;">
|
||||
<span class="material-symbols-outlined text-dark">edit_calendar</span>
|
||||
|
||||
Reference in New Issue
Block a user