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: 63.044 ]

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

Verificando integridade de servidores POP com PHP/sockets

Criando gráficos com a classe JPGraph (parte 1)

ATUALIZADO 19/01: Tragédia em Nova Friburgo/RJ

tzwatch - Navegando pelo horário mundial no Debian

Enviando mensagens de WhatsApp no Linux usando Shell Script e ADB

Leitura recomendada

Provendo dados em um servidor PostgreSQL através do Apache e PHP

Stored Procedures usando o MySQL e PHP

Como criar um sistema de autenticação de usuários usando PHP/MySQL

Armazenando datas de uma outra forma

Oracle 9i, Apache e PHP

  
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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts