debugging

This commit is contained in:
2026-06-14 23:02:53 +02:00
parent 500bca80c1
commit f36037d36d
+51 -1
View File
@@ -76,7 +76,7 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
if (!file_exists($uploadDir)) {
mkdir($uploadDir, 0755, true);
}
/*
// ----------------- Gelöschte Bilder über die JS-Löschliste entfernen -----------------
if (isset($_POST['deleted_images'])) {
$deletedImages = json_decode($_POST['deleted_images'], true);
@@ -136,7 +136,57 @@ if ($_SERVER["REQUEST_METHOD"] === "POST") {
}
}
unset($block);
}*/
// ----------------- Gelöschte Bilder über die JS-Löschliste entfernen -----------------
if (isset($_POST['deleted_images'])) {
$rawPostData = $_POST['deleted_images'];
// Test 1: Schaut, ob überhaupt Daten vom JavaScript ankommen
if (empty($rawPostData) || $rawPostData === '[]') {
// Wenn das Feld leer ist, bricht PHP hier ab und zeigt es an
die("ABBRUCH: Das Feld 'deleted_images' ist leer im Controller angekommen! Das JS hat nichts geschickt.");
}
// Bereinigung von Slashes und Backslashes, um valides JSON zu garantieren
$rawPostData = str_replace('\\"', '"', $rawPostData);
$rawPostData = str_replace('\\/', '/', $rawPostData);
$deletedImages = json_decode($rawPostData, true);
// Test 2: Prüft, ob das JSON fehlerfrei dekodiert werden konnte
if (json_last_error() !== JSON_ERROR_NONE) {
die("ABBRUCH: JSON-Dekodierungsfehler: " . json_last_error_msg() . " | Rohdaten: " . htmlspecialchars($rawPostData));
}
// Absoluter Server-Pfad zum Uploads-Ordner
$uploadDir = realpath(__DIR__ . '/../../uploads') . DIRECTORY_SEPARATOR;
if (is_array($deletedImages)) {
foreach ($deletedImages as $imagePath) {
// Filtert den reinen Dateinamen (z.B. img_65a123.jpg)
$filename = basename($imagePath);
$fullDeletePath = $uploadDir . $filename;
// Test 3: Prüft, ob PHP die Datei physisch auf der Festplatte findet
if (file_exists($fullDeletePath)) {
// Versuchen zu löschen
if (unlink($fullDeletePath)) {
// ERFOLGSMELDUNG: Wenn gelöscht wurde, stoppen wir hier und feiern den Erfolg!
die("ERFOLG: Die Datei <strong>" . $filename . "</strong> wurde physisch aus /uploads gelöscht! Der Pfad war: " . $fullDeletePath);
} else {
$error = error_get_last();
die("ABBRUCH: Datei existiert, aber Linux verbietet das Löschen! Fehler: " . $error['message']);
}
} else {
// Wenn die Datei nicht existiert (z.B. weil sie schon weg ist oder der Pfad falsch berechnet wurde)
die("ABBRUCH: PHP findet die Datei nicht unter dem Pfad: <br><strong>" . $fullDeletePath . "</strong>");
}
}
}
}
// ----------------- Ende der Lösch-Logik -----------------
// Aktualisiertes Array wieder in JSON konvertieren
$finalContent = json_encode($blocks, JSON_UNESCAPED_UNICODE);