For upload
- <html lang=“en”>
- <head>
- <meta charset=“UTF-8” />
- <title>Multiple File Ppload with PHP</title>
- </head>
- <body>
- <form action=“” method=“post” enctype=“multipart/form-data”>
- <input type=“file” id=“file” name=“files[]” multiple=“multiple” accept=“image/*” />
- <input type=“submit” value=“Upload!” />
- </form>
- </body>
- </html>
PHP CODE
- $valid_formats = array(“jpg”, “png”, “gif”, “zip”, “bmp”);
- $max_file_size = 1024*100; //100 kb
- $path = “uploads/”; // Upload directory
- $count = 0;
- if(isset($_POST) and $_SERVER[‘REQUEST_METHOD’] == “POST”){
- // Loop $_FILES to exeicute all files
- foreach ($_FILES[‘files’][‘name’] as $f => $name) {
- if ($_FILES[‘files’][‘error’][$f] == 4) {
- continue; // Skip file if any error found
- }
- if ($_FILES[‘files’][‘error’][$f] == 0) {
- if ($_FILES[‘files’][‘size’][$f] > $max_file_size) {
- $message[] = “$name is too large!.”;
- continue; // Skip large files
- }
- elseif( ! in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats) ){
- $message[] = “$name is not a valid format”;
- continue; // Skip invalid file formats
- }
- else{ // No error found! Move uploaded files
- if(move_uploaded_file($_FILES[“files”][“tmp_name”][$f], $path.$name))
- $count++; // Number of successfully uploaded file
- }
- }
- }
- }
Download FIle
- <?php
- function zipFilesAndDownload($file_names,$archive_file_name,$file_path)
- {
- $zip = new ZipArchive();
- if ($zip->open($archive_file_name, ZIPARCHIVE::CREATE )!==TRUE) {
- exit(“cannot open <$archive_file_name>\n”);
- }
- foreach($file_names as $files)
- {
- $zip->addFile($file_path.$files,$files);
- //echo $file_path.$files,$files.”<br />”;
- }
- $zip->close();
- header(“Content-type: application/zip”);
- header(“Content-Disposition: attachment; filename=$archive_file_name”);
- header(“Pragma: no-cache”);
- header(“Expires: 0”);
- readfile(“$archive_file_name”);
- exit;
- }
- require_once(“config.php”);
- $cqurfetch=mysql_query(“SELECT * FROM albums where user_id=’$user_id’ and accept=’1′”);
- while($row = mysql_fetch_array($cqurfetch))
- {
- $file_names[] = $row[‘user_album_images’];
- }
- $archive_file_name=time().‘.gallery.zip’;
- $file_path=“/uploads/”;
- zipFilesAndDownload($file_names,$archive_file_name,$file_path);
- ?>
10
MAY
MAY
0