<?

/*

Script de download de arquivos

Criado por BOZO (Leonardo Giori)
Leonardo@giori.com.br , bozo@gambiarra.com.br
www.gambiarra.com.br

Sistema que for�a o download de arquivos no diret�rio atual
N�o � o ideal de sistema de downloads, mas serve de quebra-galho e para estudo

Adicionado pagina��o e op��o de Ver ou Fazer Download

Qualquer problema no script entre em contato, ou modifique como quiser...

*/

//Reupera nome do arquivo
$file = $_GET["file"];


//Configura��es
$n_arquivos = 10;


//Recupera numero para pagina��o
if(!isset($_GET["num"])){
$num = 0;
}else{
$num = $_GET["num"];
}


//Verifica se arquivo est� no diret�rio atual, se n�o n�o faz o download
if(strstr($file, "/")){
$file = NULL;
}

//Verifica se arquivo foi setado na URL
if(isset($file)){

//Verifica se arquivo existe
if(file_exists("$file")){

//Se arquivo existir, for�a o download
header("Content-disposition: filename=$file");
header("Content-type: unknown/unknown");

//Se colocado o nome de um arquivo n�o existente no diret�rio, na url, d� mensagem de erro
}else{
echo "<script>";
echo "alert('Arquivos n�o encontrado!')";
echo "</script>";
}
}

//Esse script funciona somente com arquivos do diret�rio atual, o que pode ser mudado...
$dh = opendir(($dir = './'));



//Loop colocando arquivos no array
while(false!==($filename=readdir($dh))){
if(is_file("$dir$filename") && !($filename=='.' OR $filename=='..' OR $filename=='downloads.php')){
$arquivos[] = $filename;
}
}

//loop para printar arquivos
for($count=$num;$count<=$num+$n_arquivos;$count++){
if($arquivos[$count]!=""){
echo "<b>$arquivos[$count]</b> - <a href=\"$arquivos[$count]\">Abrir</a> | <a href='?file=$arquivos[$count]'>Download</a><br>";
}
}


if($num>=$n_arquivos){
$antes = $num-$n_arquivos;
echo "<a href='?num=$antes'>Anterior</a>";
}else{
echo "Anterior";
}

echo " || ";

if($arquivos[$count+1]!=""){
echo "<a href='?num=$count>Pr�xima</a>";
}else{
echo "Pr�xima";
}

?>