prepare("SELECT {$col} AS file_path FROM bookings WHERE booking_ref=?"); $stmt->execute([$ref]); $row = $stmt->fetch(); if (!$row || !$row['file_path']) { http_response_code(404); header('Content-Type: text/plain'); exit('No document on file.'); } $path = resolveUploadPath(dirname(__DIR__), $row['file_path']); if (!$path) { http_response_code(404); header('Content-Type: text/plain'); exit('File not found.'); } $mime = detectAllowedMime($path); if (!$mime) { http_response_code(403); header('Content-Type: text/plain'); exit('Invalid file type.'); } $fname = $type . '-' . $ref . '.' . ALLOWED_DOC_MIMES[$mime]; header('Content-Type: ' . $mime); header('Content-Disposition: inline; filename="' . $fname . '"'); header('Content-Length: ' . filesize($path)); header('Cache-Control: no-store, no-cache'); readfile($path);