connect_error) { die("Verbindung fehlgeschlagen: " . $conn->connect_error); } // 1. Abfrage: Alle Dateien, deren Pfad '%files/archive/%' enthält $sql1 = "SELECT fc.fileid, fc.name AS file_name, fc.path AS file_path, fc.size, fc.mimetype FROM oc_filecache AS fc WHERE fc.path LIKE '%files/archive/%' ORDER BY fc.name DESC"; $result1 = $conn->query($sql1); // 2. Abfrage: Alle Mimetypes und ihre IDs $sql2 = "SELECT id, mimetype FROM oc_mimetypes"; $result2 = $conn->query($sql2); // 3. Abfrage: Alle Tags im System $sql3 = "SELECT id, name FROM oc_systemtag"; $result3 = $conn->query($sql3); // 4. Abfrage: Verknüpfung zwischen Files und Tags (mit 'files' statt 'file') $sql4 = "SELECT objectid, systemtagid FROM oc_systemtag_object_mapping WHERE objecttype = 'files'"; $result4 = $conn->query($sql4); // Alle Mimetypes in einem Array speichern $mimetypes = []; while ($row = $result2->fetch_assoc()) { $mimetypes[$row['id']] = $row['mimetype']; } // Alle Tags in einem Array speichern $tags = []; while ($row = $result3->fetch_assoc()) { $tags[$row['id']] = $row['name']; } // Tags mit Dateiinformationen verbinden $fileTags = []; while ($row = $result4->fetch_assoc()) { $fileTags[$row['objectid']][] = $tags[$row['systemtagid']]; } // Füge den Tag "archive" zu jedem Eintrag in fileTags hinzu // foreach ($fileTags as $fileId => $existingTags) { // // Prüfen, ob der Tag "archive" bereits vorhanden ist // if (!in_array('archive', $existingTags)) { // // Füge den Tag "archive" hinzu (nur im Array, nicht in der DB) // $fileTags[$fileId][] = 'archive'; // } // } // HTML-Tabelle erstellen echo " File Information

File Information and Tags

All Tags:

"; echo "

All files in Archive:

"; if ($result1->num_rows > 0) { while ($row = $result1->fetch_assoc()) { $file_id = $row['fileid']; $file_name = $row['file_name']; $file_size = $row['size']; $file_size_in_mb = number_format($file_size / (1024 * 1024), 2); $mimetype_id = $row['mimetype']; $mimetype_name = isset($mimetypes[$mimetype_id]) ? $mimetypes[$mimetype_id] : 'Unknown'; // Hole die Tags für diese Datei $file_tags = isset($fileTags[$file_id]) ? implode(', ', $fileTags[$file_id]) : 'No Tags'; // Prüfen, ob der Dateiname mit einem Datum im gewünschten Format beginnt (DDMMYY-HHMM oder DDMMYY_HHMM) if (!preg_match('/^\d{6}[-_]\d{4}/', $file_name)) { continue; // Diese Datei überspringen, wenn der Dateiname nicht mit dem gewünschten Format beginnt } // Generiere die URL für die Datei $file_url = "https://pl4tform.org/data/files/{$file_name}"; // Zeile in die Tabelle einfügen und Dateinamen als Link formatieren echo ""; } } else { echo ""; } echo "
File ID File Name Size (MB) Mimetype Tags edit
{$file_id} {$file_name} {$file_size_in_mb} {$mimetype_name} {$file_tags} edit
No data found
"; $conn->close(); ?>