if(isset($_POST['create'])){
			  $zip = new ZipArchive();
			  $filename = "./" . $fileno . ".zip";

			  if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) {
				exit("cannot open <$filename>\n");
			  }

			  $dir = &#039;./orders/&#039; . $fileno . &#039;/&#039;;
			  echo "Attempting to Create Zip at " . $dir . " with name " . $filename;
			  // Create zip
			  //createZip($zip,$dir);

			  $zip->close();
			}

			// Create zip
			function createZip($zip,$dir){
			  if (is_dir($dir)){

				if ($dh = opendir($dir)){
				   while (($file = readdir($dh)) !== false){
			 
					 // If file
					 if (is_file($dir.$file)) {
						if($file != &#039;&#039; && $file != &#039;.&#039; && $file != &#039;..&#039;){
			 
						   $zip->addFile($dir.$file);
						}
					 }else{
						// If directory
						if(is_dir($dir.$file) ){

						  if($file != &#039;&#039; && $file != &#039;.&#039; && $file != &#039;..&#039;){

							// Add empty directory
							$zip->addEmptyDir($dir.$file);

							$folder = $dir.$file.&#039;/&#039;;
			 
							// Read data of the folder
							createZip($zip,$folder);
						  }
						}
			 
					 }
			 
				   }
				   closedir($dh);
				 }
			  }
			}

			// Download Created Zip file
			if(isset($_POST[&#039;download&#039;])){
			 
			  $filename = $fileno . ".zip";

			  if (file_exists($filename)) {
				 header(&#039;Content-Type: application/zip&#039;);
				 header(&#039;Content-Disposition: attachment; filename="&#039;.basename($filename).&#039;"&#039;);
				 header(&#039;Content-Length: &#039; . filesize($filename));

				 flush();
				 readfile($filename);
				 // delete file
				 unlink($filename);
			 
			   }
			}

Add a code snippet to your website: www.paste.org