I'm trying to download multiple files from the server in a zipped folder. Here is the code I have thus far:
HTML
<form method="post">
<input type="checkbox" name="checked[]" value="<?php echo $path; ?>">
<input type="submit" name="download" value="Download Selected">
</form>
PHP:
if(isset($_POST['download'])){
$files = $_POST['checked'];
$zip = new ZipArchive();
$zip_name = time().".zip"; // Zip name
$zip->open($zip_name, ZipArchive::CREATE);
$full = wp_upload_dir();
$base = $full['baseurl'] .'/';
foreach ($files as $file) {
echo $full_path = $file;
echo $_SERVER['DOCUMENT_ROOT'] . $path;
if(file_exists($_SERVER['DOCUMENT_ROOT'].'/upload/folder/'.$full_path)){
$zip->addFromString(basename($base . $full_path), file_get_contents($base . $full_path));
}
else{
echo"file does not exist";
}
}
$zip->close();
}