Current Path : /data/web/virtuals/51568/virtual/www/www/uploader/ |
Current File : /data/web/virtuals/51568/virtual/www/www/uploader/uploader-zipovac.php |
<?php $galerie_id = (isset($_POST["galerie_id"])) ? $_POST["galerie_id"] : 0; if (!isset($pdo)){ require "../../class/pdoDB.class.php"; $pdo = new pdoDB(); } $fotky = []; $fotky = zjistiFotky($galerie_id, $pdo); $targetDir = "../../ftp/galeriezip"; if(!is_dir($targetDir)){ mkdir($targetDir); } $targetDir .= "/"; $zipFile = $targetDir . $galerie_id . ".zip"; $fotky = zjistiFotky($galerie_id, $pdo); $result = createZipArchive($fotky, $zipFile); echo $result; function zjistiFotky($galerie_id, $pdo){ $query = "SELECT `folder` FROM `soubory_galerie` WHERE id = :galerie_id"; $row = $pdo->queryOne($query, Array(':galerie_id' => $galerie_id)); $slozka = $url.'../../ftp/galerie/'.$row->folder.'/'; $files=[]; $query = "SELECT `id`, `ext` FROM `soubory` WHERE galerie_id=:galerie_id order by `poradi`"; $fotky = $pdo->queryAll($query, Array(':galerie_id' => $galerie_id)); forEach ($fotky as $fotka){ $odkaz = $slozka.$fotka->id.'.'.$fotka->ext; $files[] = $odkaz; } return $files; } function createZipArchive($files=array(), $destination='') { $overwrite = file_exists($destination); $validFiles=array(); if(is_array($files)) { foreach($files as $file) { if(file_exists($file)) { $validFiles[] = $file; } } } if(count($validFiles)) { $zip=new ZipArchive(); if($zip->open($destination, $overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) == true) { foreach($validFiles as $file) { $zip->addFile($file, basename($file)); } $zip->close(); return file_exists($destination); } else { return false; } } else { return false; } }