Como bloquear downloads de arquivos em PHP
Em certas ocasiões é útil bloquear downloads para usuários não autorizados, obrigando-os a se cadastrarem no seu site para terem acesso ao conteúdo. Isso ajuda na retenção de público e na fidelização de acessos. Neste post veja como bloquear downloads de arquivos em PHP.
Antes de qualquer linha de programação, precisamos criar uma tabela na base de dados que armazenará os links. Crie uma tabela simples, com os campos “link” e “descricao” que armazenará a URL e a descrição da mesma, respectivamente.
Os códigos abaixo impedem o download de um arquivo usando uma variável de sessão (apenas usuários logados poderão fazer o download do arquivo).
Veja:
<?php
if(!isset($_SESSION["autenticado"]) || $_SESSION["autenticado"] == NULL)
$acesso = "false"; //USUÁRIO NÃO LOGADO -- NÃO PODE FAZER O DOWNLOAD
else
$acesso = "true"; //USUÁRIO LOGADO -- DOWNLOAD LIBERADO
$servidor = 'servidor';
$usuario = 'usuario';
$senha = 'senha';
$link = mysql_connect($servidor, $usuario, $senha)
or die('Não foi possivel conectar: ' . mysql_error());
$select = mysql_select_db('meu_banco');
function abreLink($descricao)
{
seleciona o link com base na descrição da mesma
$sql = "SELECT * FROM links where descricao='".$descricao."'";
$result = mysql_query($sql);
while ($tbl = mysql_fetch_array($result))
{
$link = $tbl["link"]; pega o link
}
return $link; retorna o link
}
?>
função simples para exibir a mensagem de bloqueio
<script type="text/javascript">
function msg()
{
alert("Conteúdo bloqueado! \n\n\Logue-se ou crie uma conta para acessar este conteúdo.");
}
</script>
//...
//configuração do link para download
<a href="<?php if($acesso=='true') echo(abreLink('descrição-link')); ?>"
target="<?php if($acesso=='true') echo('_blank');?>"
onClick="<?php if($acesso=='false') echo ('msg()') ?>"> Descrição do link
No exemplo acima usei o PHP para verificar se o usuário estava logado e o Java Script para gerar a mensagem de bloqueio.
Note que com o “echo” chamamos a função PHP “abreLink()” e passamos como parâmetro a descrição do link. A target configuramos com base no valor da variável de sessão: se for “true” outra janela é aberta (_blank).
O evento “onClick” mostra a mensagem da função JavaScript caso o valor da variável da sessão seja igual a “false” (usuário não logado).
Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
A verdade é que continuar sem esse conhecimento pode estar custando muito mais do que você imagina.
Você pode economizar centenas ou até milhares de reais ao longo do tempo fazendo você mesmo a manutenção dos seus computadores. E, se decidir prestar serviços, esse conhecimento também pode se transformar em uma fonte de renda, que pode variar de R$2.000 a R$5.000 por mês ou mais.
Tudo isso com aulas práticas, objetivas e focadas no que realmente funciona, sem enrolação:
✔ Resolver seus próprios problemas sem depender de ninguém ✔ Ganhar dinheiro com manutenção e suporte técnico ✔ Ou até entrar de vez no mercado de TI
A decisão é sua: continuar gastando dinheiro sempre que o computador apresentar um problema ou aprender uma habilidade que pode fazer você economizar e até gerar uma nova fonte de renda.
👉 CLIQUE AQUI AGORA e veja todos os detalhes antes que essa oportunidade passe:
Sobre o Autor

0 Comentários