<?php
	require('sistema/connect/db.php');
	session_start();

	$file = $_GET['arquivo'];

	$sql = $db->prepare('SELECT arquivo FROM arquivos WHERE SHA1(arquivo) = :file');
	$sql->bindParam(':file', $file, PDO::PARAM_STR);
	$sql->execute();

	$arquivo = "sistema/arquivos/".$sql->fetchColumn(0);

	if(is_file($arquivo)){

		switch(strtolower(substr(strrchr(basename($arquivo),"."),1))) {
			case "pdf": $tipo="application/pdf"; break;
			case "exe": $tipo="application/octet-stream"; break;
			case "zip": $tipo="application/zip"; break;
			case "doc": $tipo="application/msword"; break;
			case "xls": $tipo="application/vnd.ms-excel"; break;
			case "ppt": $tipo="application/vnd.ms-powerpoint"; break;
			case "gif": $tipo="image/gif"; break;
			case "png": $tipo="image/png"; break;
			case "jpg": $tipo="image/jpg"; break;
			case "mp3": $tipo="audio/mpeg"; break;
			case "php": // deixar vazio por seurança
			case "htm": // deixar vazio por seurança
			case "html": // deixar vazio por seurança
		}

		header("Content-Type: ".$tipo); // informa o tipo do arquivo ao navegador
		header("Content-Length: ".filesize($arquivo)); // informa o tamanho do arquivo ao navegador
		header("Content-Disposition: attachment; filename=".basename($arquivo)); // informa ao navegador que é tipo anexo e faz abrir a janela de download, tambem informa o nome do arquivo
		readfile($arquivo); // lê o arquivo
		exit; // aborta pós-ações
	}