Ir para conteúdo
Fórum Script Brasil
  • 0

Problema em subir PDF


neo_soro

Pergunta

Bom di p.*,

eu to terminando um sistema aqui no meu trampo e fui fazer uns testes, daí eu percebi um erro cabuloso. Seguinte: sexta-feira o sistema estava funcionando perfeitamente 100%

No sistema, o usuário sobe um arquivo que pode ser pdf, doc, odt. Tipo umas declarações e tals. Mas só que hoje quando fui fazer o teste final não funcionou mais de jeito nenhum. Tipo quando cara sobe o arquivo e lá na pasta que é criada par ao usuário o nome do arquivo fica assim: declara��o-de-vinculo.pdf (codificação inválida), onde essas ?? são duas letras com acento. Antes isso não era problema e pra piorar também tem um módulo que gera um pdf (uso a classe FPDF) que quando é gerado vem corrompido e parece ter relação com o erro. O engraçado é que se colocar o nome sem acento ele aceita de boua e funciona perfeitamente. Um detalhe é que esse sistema hora tava sendo desenvolvido em uma máquina com LINUX e outra hora numa com Windows Vista e depois XP e depois voltou pro LINUX, na verdade estava desenvolvendo com mais outra pessoa e essa pessoa que usava o Vista e teve um dia que fiz um negócio em casa e é XP. O que pode ser? Me ajudem, por favor estou prestes a entregar e é um sistema aberto para o Estado inteiro e não tem como atrasar TEM DATA CERTA!!!!!!! :o :(

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Antes de salvar o arquivo converta o nome do arquivo para UTF-8:

utf8_encode($nome_do_arquivo);

Verdade! Uma forma tão simples que nem tinha pensado nisso. Acho que é o desespero hehehehehehe. Mas cara ele tb tá dando bug quando gera PDF e o nome do arquivo que é gerado não dá pau. E o mais estranho é que começou a bugar do nada! Tipo desse jeito acho que vai resolver, mas não todo o problema. De qulquer forma muito obrigado mesmo.

[]'s Rodrigo Nascimento

Link para o comentário
Compartilhar em outros sites

  • 0
...Tipo desse jeito acho que vai resolver, mas não todo o problema....

Também acredito que não vá resolver, o que acontece é que você tem uma parte do projeto em UTF-8 (padrão Linux) e outra parte ISO-8859-1 (padrão do Windows), você deverá escolher uma das duas codificações e utilizá-la em todo o projeto.

Depois de escolher a sua codificação padrão, na página que contém o formulário para o envio do seu arquivo você deverá utilizar um cabeçalho HTTP para informar ao navegador o tipo de codificação que ele deverá utilizar também, essa codificação para o navegador não serve apenas para exibir corretamente os caracteres no browser mas para o envio de arquivos também.

Se quiser uma sugestão, utilize sempre UTF-8, mesmo que seu projeto tenha sido feito no Windows e vá rodar em um servidor Windows, porque o conjunto de caracteres UTF-8 foi feito para aceitar um conjunto muito maior de idiomas. Só o fato de converter todos os arquivos do seu projeto para UTF-8 e depois enviar um cabeçalho HTTP para o navegador já irá resolver definitivamente o seu problema.

header( "Content-Type: text/html; charset=utf-8" );

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...