Estou trabalhando em um sistema web onde no servidor existe um diretório com dezenas de arquivos .PRN
Depois de algumas combinações de informações preciso fazer o download de um arquivo .PRN especíco. Porém, ao fazer isso o conteúdo do arquivo está vindo todo modificado. Na verdade está vindo um conteúdo CSS.
Abaixo segue o trecho do meu código:
$aquivoNome = $res["nome_pedido"].".PRN";
// Verifica se o arquivo não existe
if (!file_exists($aquivoNome)) {
// Exiba uma mensagem de erro caso ele não exista
exit;
}
// Configuramos os headers que serão enviados para o browser
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename="'.$aquivoNome.'"');
header('Content-Type: application/postscript');
header('Content-Type: application/force-download');
header("Content-Type: application/download");
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.filesize($aquivoNome));
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Expires: 0');
// Envia o arquivo para o cliente
readfile($aquivoNome);
Sei que uma alternativa seria ler o conteúdo do PRN do servidor e gerar um novo arquivo para download, mas isso não é nada decente no que diz respeito a uma implementação eficaz.
Pergunta
Thiago Medeiros
Pessoal, boa tarde!
Estou trabalhando em um sistema web onde no servidor existe um diretório com dezenas de arquivos .PRN
Depois de algumas combinações de informações preciso fazer o download de um arquivo .PRN especíco. Porém, ao fazer isso o conteúdo do arquivo está vindo todo modificado. Na verdade está vindo um conteúdo CSS.
Abaixo segue o trecho do meu código:
Abaixo segue o conteúdo original do .PRN:
--------------------------------------------------
N
Q200,24
q504
N
Q200,24
q504
A85,10,0,3,2,1,N,"026000000502"
B120,40,0,2,2,5,92,N,"026000000502"
A85,137,0,2,1,1,N,"Thalissa Rocha"
A100,125,3,1,1,1,N,"EXT"
A80,125,3,2,1,1,N,"USL"
A80,50,3,2,1,1,N,"99"
A62,155,3,3,1,1,N,"18/03/2014"
A380,155,3,2,1,1,N,"FRASCO"
A400,155,3,2,1,1,N,"URINA"
A420,155,3,2,1,1,N,"02600018-006"
P1
N
Q200,24
q504
A85,10,0,3,2,1,N,"026000000501"
B120,40,0,2,2,5,92,N,"026000000501"
A85,137,0,2,1,1,N,"Thalissa Rocha"
A100,125,3,1,1,1,N,"EXT"
A80,125,3,2,1,1,N,"USL"
A80,50,3,2,1,1,N,"99"
A62,155,3,3,1,1,N,"18/03/2014"
A380,155,3,2,1,1,N,"SORCO1"
A400,155,3,2,1,1,N,"SANGUE"
A420,155,3,2,1,1,N,"02600018-006"
P1
--------------------------------------------------
Ao terminar o download o conteúdo do arquivo é o seguinte:
--------------------------------------------------
<style>
/* MENSAGENS */
.msg_alerta {
background-image: url("funcao/mensagem/msg_alerta.gif");
background-repeat: no-repeat;
background-position: 15px center;
background-color: #FFFF7F;
border: 1px solid #B6B60C;
color: #B6B60C;
font-family: helvetica;
font-size: 12px;
font-weight: bold;
margin: 15px;
padding-left: 50px;
padding-top: 5px;
padding-bottom: 5px;
text-align: left;
width: 70%;
}
.msg_erro {
background-image: url("funcao/mensagem/msg_erro.gif");
background-repeat: no-repeat;
background-position: 15px center;
background-color: #FFD4D4;
border: 1px solid #D60202;
color: #D60202;
font-family: helvetica;
--------------------------------------------------
Continuando... Fiz uma pesquisa na internet e encontrei a lista de possíveis extenções suportadas pelo php para fazer o download de um arquivo:
http://blog.caixades...a-de-mime-types
Sei que uma alternativa seria ler o conteúdo do PRN do servidor e gerar um novo arquivo para download, mas isso não é nada decente no que diz respeito a uma implementação eficaz.
Alguém pode me dar uma luz?
Desde já agradeço.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.