Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

bilzao90

problema sistema de download

Recommended Posts

Ola,

 

Então amigos to com um problema fiz um codigo para poder forçar download de arquivos e imagens segue o codigo abaixo HTML e PHP, porém ao clicarem efetuar o download ele segue com este erro:

 

Cabeçalhos duplicados recebidos do servidor

A resposta do servidor contém cabeçalhos duplicados. Este problema geralmente é resultado de problemas na configuração de um website ou proxy. Apenas o administrador do website ou proxy pode corrigir este problema.

Erro 349 (net::ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION): Diversos cabeçalhos de disposição de conteúdo foram recebidos. Para garantir proteção contra ataques de divisão de resposta HTTP, o conteúdo foi bloqueado.

 

Porem o unico que nao ta baixando é o ultimo arquivo, queria saber a opinião de voces, para melhor visualizar vcs podem entrar em CLICANDO AQUI que é o site ja no ar e ir em download na parte inferior do site

 

 

<style>

 

TH, TD{

padding:5px;

height:50px;

}

 

TH img,TD img{

max-width:70px;

max-height:50px;

}

 

</style>

 

<div>

 

<table cellpadding="1">

 

<tr>

<th cellpadding="5" width="100"></th>

<th width="550" rowspan="">Titulo</th>

<th width="25">Baixar</th>

</tr>

 

<tr>

<td><img width="70" src="arquivos/FAIXA_ADESIVO_35X12.jpg" /></td>

<td style="font-size:14px">Faixa Adesivo</td>

<td align="center"><a href="#" onclick="window.open('download.php?file=arquivos/FAIXA_ADESIVO_35X12.jpg', 'download', 'status=0');"><img src="img/download2.png" width="25" ></a></td>

</tr>

 

<tr>

<td><img width="70" src="arquivos/PERFURADO_70X40CM.jpg" /></td>

<td style="font-size:14px">Perfurado do Arnaldinho</td>

<td align="center"><a href="#" onclick="window.open('download.php?file=arquivos/PERFURADO_70X30CM.jpg', 'download', 'status=0');"><img src="img/download2.png" width="25" ></a></td>

</tr>

 

<tr>

<td><img width="70" src="arquivos/PERFURADO_70X30CM.jpg" /></td>

<td style="font-size:14px">Perfurado do Arnaldinho</td>

<td align="center"><a href="#" onclick="window.open('download.php?file=arquivos/PERFURADO_70X30CM.jpg', 'download', 'status=0');"><img src="img/download2.png" width="25" ></a></td>

</tr>

 

<tr>

<td><img width="70" src="arquivos/BANNER_ARNALDINHO_1,66x2,24M.jpg" /></td>

<td style="font-size:14px">Faixa Adesivo</td>

<td align="center"><a href="#" onclick="window.open('download.php?file=arquivos/BANNER_ARNALDINHO_1,66x2,24M.jpg', 'download', 'status=0');"><img src="img/download2.png" width="25" ></a></td>

</tr>

 

</table>

 

</div>

 

 

PHP

 

 

<?php

 

$arquivo = $_GET["file"];

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

}

 

?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.