Я хочу добавить метод на свою платформу, который позволяет пользователям загружать все файлы из приложения, которое будет зашито. Каждое приложение состоит из нескольких файлов, которые хранятся в отдельных строках таблицы файлов в базе данных.
Я пробовал много вариантов, но просто не могу добавить фактические файлы в zip.
Это мой код:
$sql = "SELECT * FROM files WHERE applications_id = :applications_id"; $stmt = $db->prepare($sql); $stmt->bindParam(':applications_id', $applications_id, PDO::PARAM_INT); $stmt->execute(); $items = $stmt->fetchAll(); $zipfilename = 'temp_' . time() . '.zip'; $zip = new ZipArchive; $zip->open($zipfilename, ZipArchive::CREATE); foreach ($items as $item) { //$zip->addFromString($item['filename'],$item['filename']); } $zip->close(); header('Content-Type: application/zip'); header('Content-disposition: attachment; filename='.$zipfilename); header('Content-Length: ' . filesize($zipfilename)); readfile($zipfilename); exit();
Любая помощь будет принята с благодарностью!