- Fórum
- OTServ
- Recursos
- Linguagens de Programação
- Programação Web
- Implementando Um Contador De Downloads Com Php E Mysql
RU
php
Implementando Um Contador De Downloads Com Php E Mysql
Por rubinhobarrichelo, 21 de set. de 2009 em Programação Web
otserv
script
1
1.4k
info
Grupo: Visconde
Registrado: 11/06/08
Posts: 363
Reputação: 0
Char no Tibia: Kyra Supreme
Implementando um contador de downloads com PHP e MySQL
A ideia de criar um contador de downloads surgiu quando quis medir a popularidade dos scripts que disponibilizava em meu web site. Com certeza a curiosidade é o que faz evoluir qualquer programador, eu não fazia ideia sobre como começar o programa.
Foi descoberto como o servidor web forçava o browser do usuário a abrir uma janela para salvamento de arquivo e para isso foram gastas algumas horas lendo a RFC do protocolo HTTP [ disponível em http://www.ietf.org/rfc/rfc2616.txt ]. Depois de descoberto esses pequenos detalhes, foi bem tranquilo finalizar o script.
Neste artigo não irá aprofundar no gerenciamento do MySQL, irá partir do princípio que você é capaz de criar a tabela usada no script.
Antes de iniciarmos a programação do script, vamos preparar seu ambiente de execução. O primeiro passo será o de criar o banco de dados que será acessado pelo script. Assumindo que você já esteja conectado ao shell do MySQL, vamos à seguinte sequência de comandos:
Nas linhas acima, criamos o banco de dados phpdownload e em seguida a tabela contador, que será usada para armazenar o nome do arquivo e o número de vezes que ele foi clicado. Em seguida, vamos criar um usuário no banco de dados que será usado pelo script para se conectar ao MySQL:
Neste exemplo, criei um diretório central onde estarão armazenados todos os arquivos disponíveis para download no site. Se quiser seguir outro padrão, basta adaptar o script que será apresentado. Sendo assim, no mesmo diretório onde será encontrado o programa download.php existe um diretório de nome "publico".
Nosso programa sempre receberá um argumento, o nome do arquivo que está dentro do diretório publico. O primeiro bloco de código vai entrar neste diretório e verificar se o arquivo solicitado existe:
Agora que sabemos que o arquivo existe, vamos conectar ao banco de dados e adicionar um hit ao número de vezes que clicaram sobre o mesmo.
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:
Viram só, um contador de download não é nenhum bicho de sete cabeças. Vamos juntar nossas partes do programa e mostrar a versão final do script:
Para usar o mesmo, sempre que for criar um link para download, copie o arquivo para o diretório ./publico e defina a referência para ./download.php?arquivo=nome_do_arquivo:
Créditos: Fábio Berbert de Paula
Organização, ortográfia: Rubinho