Criando um contador de downloads com PHP e MySQL

Este artigo descreve como criar um contador de downloads em PHP, que armazena o número de downloads de um arquivo do seu site numa tabela do banco de dados MySQL.

[ Hits: 64.970 ]

Por: Fábio Berbert de Paula em 04/11/2002 | Blog: https://fabio.automatizando.dev


Elaborando o script - parte 3



Agora que já fizemos todo o processamento necessário, vamos enviar o arquivo em forma de stream binário para o navegador do usuário:

<?
$tamanho = filesize($arquivo); // pega o tamanho do arquivo em bytes

// enviar os cabeçalhos HTTP para o browser
header("Content-Type: application/save");
header("Content-Length: $tamanho");
header("Content-Disposition: attachment; filename=$arquivo");
header("Content-Transfer-Encoding: binary");

// abrir e enviar o arquivo
$fp = fopen("$arquivo", "r");
fpassthru($fp);
fclose($fp);
?>
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Criação do banco de dados
   3. Elaborando o script - parte 1
   4. Elaborando o script - parte 2
   5. Elaborando o script - parte 3
   6. Elaborando o script - parte final
Outros artigos deste autor

Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança

Minha caixa de ferramentas no GNU/Linux

Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta

Assumindo o controle do teu Android com ADB

Entrevista com um hacker, via Internet

Leitura recomendada

PHP com PostgreSQL - Estruturando a conexão

Criando backup do MySQL com o mysqldump

Gallery - Álbum de fotos no seu site

Criando uma agenda eletrônica com PHP/MySQL

Paginando resultados com a classe Generic Easy Pagination

  
Comentários
[1] Comentário enviado por gustavo_marcon em 22/03/2003 - 12:29h

muito interessante este script. valeu!

[2] Comentário enviado por rjardim em 11/07/2004 - 16:34h

bom, seu que minha pergunta nao vai ter uma resposta muito fácil, mas vai assim mesmo:

eu quero usar o script acima, mas o meu banco de dados tem um campo do tipo BLOB onde os arquivos para download ficam armazenados, mas o problema eh que ate agora nao consegui criar os links para downloads destes arquivos.

www.wrsistemas.com.br/updates.php

[3] Comentário enviado por elrafael em 12/04/2007 - 16:10h

Só uma dica....

Sempre verifique qdo o usuário poder passar valores de variáveis.

tipo, colocar ?arquivo=qualquer_coisa (inclusive sql injection)

de resto, tá simples e objetivo! parabéns!

[4] Comentário enviado por brunoestevao em 12/03/2008 - 14:50h

O tuto ta muito bom.
Se implementar um uso de sessão para impedir que o usuário altere o código, ficará ainda mais seguro.

Abraços

Bruno Estêvão
www.sempihost.com.br
Hospedagem de sites com 30 dias grátis


Contribuir com comentário