William Luis

0 %
William Luis
Fullstack Developer
  • Residence:
    Canada
  • City:
    Toronto
  • Age:
    26
French
English
Spanish
html
CSS
Js
PHP
WordPress
  • Bootstrap, Materialize
  • Stylus, Sass, Less
  • Gulp, Webpack, Grunt
  • GIT knowledge

Força downloads de arquivos em PHP

25 de março de 2013

Pesquisando achei esse script que força a baixar qualquer tipo de arquivo.

Crie uma arquivo baixar.php copie o código abaixo.

[sourcecode language=”php”]
<?php

$arquivo = $_GET["arquivo"];
if(isset($arquivo) && file_exists($arquivo)){ // faz o teste se a variavel não esta vazia e se o arquivo realmente existe
switch(strtolower(substr(strrchr(basename($arquivo),"."),1))){ // verifica a extensão do arquivo para pegar o tipo
case "pdf": $tipo="application/pdf"; break;
case "exe": $tipo="application/octet-stream"; break;
case "zip": $tipo="application/zip"; break;
case "doc": $tipo="application/msword"; break;
case "xls": $tipo="application/vnd.ms-excel"; break;
case "ppt": $tipo="application/vnd.ms-powerpoint"; break;
case "gif": $tipo="image/gif"; break;
case "png": $tipo="image/png"; break;
case "jpg": $tipo="image/jpg"; break;
case "mp3": $tipo="audio/mpeg"; break;
case "php": // deixar vazio por seurança
case "htm": // deixar vazio por seurança
case "html": // deixar vazio por seurança
}
header("Content-Type: ".$tipo); // informa o tipo do arquivo ao navegador
header("Content-Length: ".filesize($arquivo)); // informa o tamanho do arquivo ao navegador
header("Content-Disposition: attachment; filename=".basename($arquivo)); // informa ao navegador que é tipo anexo e faz abrir a janela de download, tambem informa o nome do arquivo
readfile($arquivo); // lê o arquivo
exit; // aborta pós-ações
}
?>

[/sourcecode]

Agora crie o HTML index.php e coloque o código abaixo.

[sourcecode language=”html”]
<!–
Este será o link que apontará para o nosso script PHP.
Use no href "baixar.php?arquivo=" + caminho de seu arquivo;
No Exemplo abaixo utilizei uma imagem com o nome "imagem.jpg" que esta dentro da pasta "arquivos".
–>
<a href="baixar.php?arquivo=arquivos/imagem.jpg">Baixar Arquivo</a>

[/sourcecode]

Agora abra o arquivo index.php e clique no link “Baixar Arquivo”.

Fonte: http://www.devmedia.com.br/forcar-download-de-arquivos-com-php/17097

Posted in Dicas, PHPTags:
Write a comment