query("SELECT id, owner, share FROM files WHERE parent=" . $folder_id . "); $file_id_ar = $file_id_db->fetchArray(SQLITE3_NUM); $file_id = $file_id_ar[0]; $check_verification_db = $ $check_verification_ar[1]; $share = $check_verification_ar[2]; if($_SESSION["login"] && ($_SESSION["userid"] == $file_owner)){ $var = download_file($db, $file_id); } else { if($share != "PUBLIC"){ return false; } $var = download_file($db, $file_id); } */ if(!download_file($db, $file_id)){ return false; } else { return true; } } function check_file_hash($db, $file_id, $download_hash){ $check_hash_db = $db->query("SELECT share FROM files WHERE id=" . SQLite3::escapeString($file_id).";"); $check_hash_ar = $check_hash_db->fetchArray(SQLITE3_NUM); if(($check_hash_ar[0] != "PUBLIC") || ($check_hash_ar[0] != $download_hash)){ return false; } if(!download_file($db, $file_id)){ return false; } else { return true; } } function download_file($db, $file_id){ $file_db = $db->query("SELECT name, mime, hash FROM files WHERE id=". SQLite3::escapeString($file_id).";"); $file_ar = $file_db->fetchArray(SQLITE3_NUM); $file_name = $file_ar[0]; $file_mime = $file_ar[1]; $file_hash = $file_ar[2]; $uploaddir = "../files/"; $gzip_file = $uploaddir . $file_hash . ".gz"; $uncompressed_file = readgzfile($gzip_file); if($uncompressed_file){ header("Content-Type: ".$file_mime); header("Content-Disposition: attachment; filename=\"".$file_name."\""); return true; } else { return false; } }