Neste artigo explicarei como fazer o download de arquivo via FTP.

Para iniciar fiz uma listagem de todos os arquivos cadastrados em meu banco de dados, já com o link para o download como na imagem a baixo:

Como estou fazendo uma consulta no banco de dados o resultado vai vir de um record set ficando assim a tabela:


Área Tipo Materila Titulo Link Opções
^ | X

A parte sublinha é a parte do link. Neste link será direcionado para minha página "baixar.php" com o parâmtro "file=o nome do arquivo". Agora vamos colocar como funciona o arquivo "baixar.php" pois é ele é responsável por fazer o Download.

Código comentado:


$pasta = 'ftp';  //nome da pasta no seu FTP, onde os arquivos foram guardados

if(isset($_GET['file']) && file_exists("{$pasta}/".$_GET['file']))
{
    $file = $_GET['file']; // variável que pega o nome do arquivo que deseja fazer o download
    $type = filetype("{$pasta}/{$file}"); //pega o tipo do arquivo que deseja fazer o download
    $size = filesize("{$pasta}/{$file}"); // pega o tamanho do arquivo
   
  header("Content-Description:File Transfer"); //descriptografando para fazer o download
    header("Content-Type:($type)");  // pegando o tipo
    header("Content-lenght:($size)"); // pegando o tamanho
    header("Content-Disposition: attachment; filename=$file"); //verificando e inicializando o downlaod
    readfile("{$pasta}/{$file}"); //fazendo o download
    exit; // saindo
   
}