Script para download de arquivos

Aqui você verá artigos sobre PHP

Moderador: web

responder a dúvida

Script para download de arquivos

Mensagem por web Offline » Qua Mai 23, 2007 10:24 am

Esse script serve para abrir uma janela do navegador de download de determinado arquivo.

Você irá passar o arquivo a ser baixado como segue o exemplo:
http://www.seusite.com/estearquivo.php? ... o.extensao

<?php
// mantenha a / no final - ./ é relativo ao diretório atual
$dir = './'; // diretório onde está o arquivo

$arquivo = $_GET['arquivo']; // arquivo passado pelo link
$arq = $arquivo;

if($arq!="") {

function erro_JS($tex){ // retorno quando houver erro
echo '<SCRIPT language="JavaScript">
window.alert('.$tex.');
</SCRIPT>';
exit();
}

function retorna_extensao($arq){ // função q pega a extensão do arquivo
$arr = explode('.', $arq);
$num = count($arr)-1;
$ext = $arr[$num];
return $ext;
}
$ext = retorna_extensao($arq);
switch($ext){
case "pdf": $var = "application/pdf";
break;
case "exe": $var = "application/octet-stream";
break;
case "zip": $var = "application/zip";
break;
case "doc": $var = "application/msword";
break;
case "xls": $var = "application/vnd.ms-excel";
break;
case "ppt": $var = "application/vnd.ms-powerpoint";
break;
case "gif": $var = "image/gif";
break;
case "png": $var = "image/png";
break;
case "jpeg":
case "jpg": $var = "image/jpg";
break;
default: $var = "application/force-download";
}

if(file_exists($dir.$arq)){ // adição do header para download
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Content-Type: $var");
header("Content-Disposition: attachment; filename=\"".basename($dir.$arq)."\";" );
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($dir.$arq));
readfile($dir.$arq);
} else {
erro_JS('Erro ao tentar fazer download de arquivo!');
}
}
?>



detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb [@] hotmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 11904
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

Script para download de arquivos

Mensagem por web Offline » Qui Out 01, 2009 10:54 pm

O script acima tinha um erro, porque não permitia baixar arquivos de diretórios além do que o script está rodando, agora já está ok.

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb [@] hotmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 11904
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil


responder a dúvida

Voltar para Artigos sobre PHP

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes