登录 | 注册 | FAQ
Anonymous

Forçar download de um arquivo .PRN

+ 发表回复

2 篇帖子 分页: 1 / 1


Forçar download de um arquivo .PRN

Thiago Medeiros » 周三 3月 19, 2014 6:58 pm

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:

代码: 全选
$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);


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.
头像

Thiago Medeiros

  • 帖子: 1
  • 注册: 周三 3月 19, 2014 6:56 pm

Re: Forçar download de um arquivo .PRN

XainPro » 周四 3月 20, 2014 1:08 pm

header("Content-disposition: attachment");
头像

XainPro

  • 帖子: 3933
  • 注册: 周五 2月 17, 2012 8:10 pm


+ 发表回复

分页: 1 / 1