Autor Tópico: Envio de arquivo  (Lida 4100 vezes)

marciowilliam

  • Intermediário
  • ***
  • Mensagens: 118
    • Email
Re:Envio de arquivo
« Responder #30 Online: Fevereiro 22, 2016, 11:00:05 pm »
Oi Estava com um problema similar O Rodrigo me deu um Help. A nossa difrenca que estava usando uma aplicacao CONTROLE.

O meu problema era a localizacao do arquivos DOC tem que ser o caminho ABSOLUTO
 

No evento onScriptInit eu coloquei:

$docdir = $this->Ini->root . $this->Ini->path_doc;
$this->Ini->path_doc = $docdir;

Alexandre Pereira Bühler

  • Expert
  • *****
  • Mensagens: 1638
  • Nunca estabeleça um teto para os seus rendimentos.
    • Simão & Bühler Ltda
    • Email
Re:Envio de arquivo
« Responder #31 Online: Fevereiro 26, 2016, 01:26:15 pm »
Descobri o que aconteceu.
Podem ver que agora funciona normalmente a aplicação.
http://www.simaoebuhler.com.br/teste/upload

O Gnu/Linux é case sensitive e o collate configurado no shell interfere no nomes dos arquivos que o apache/php é capaz de manipular no disco.
Para que o apache/php possa achar o arquivo no disco a configuração do collate no apache/php e no shell devem ser executados com mesma definição.

Esta configuração do collate no apache+php pode ser feita no próprio arquivo de configuração do apache ou no cabeçalho da página html/php.
Mudar esta configuração no apache pode trazer muitas dificuldades numa hospedagem compartilhada.
Logo, o melhor é mudar no cabeçalho da página php/html.
No scriptcase isto pode ser feito em: aplicação, configuração -> charset

Exemplos de situações para o GNU/Linux:
apache/php (iso-8859-1) + shell (utf8) = problema no upload
apache/php (utf8) + shell (iso-8859-1) = problema no upload
apache/php (iso-8859-1) + shell (iso-8859-1) = funciona o upload
apache/php (utf8) + shell (utf8) = funciona o upload


Minha aplicação no scriptcase estava como ISO-8859-1.
Meu servidor Debian Linux esta com collate pt_BR.utf8.
O upload nunca iria dar certo.
O correto para o upload no meu servidor funcionar é APPs como utf8.

O scritpcase faz o processo de gravar o arquivo na pasta tmp e depois popular na base de dados.
Quando ela gravava na pasta tmp. O arquivo era gravado com caracteres estranhos: sc_4bfc7cb5_teste com acentod c?pia.pdf . Pois era salvo um arquivo com nome iso-8859-1 num sistema de arquivos utf8.
Ao mudar minha aplicação para UTF-8 a aplicação começou a salvar no sistema de arquivos (tmp) o arquivo com caracteres corretos (utf8): sc_77322a0a_teste com acentod cópia.pdf
E  o upload começou a funcionar corretamente.

No Windows creio que esta situação não ocorra.
Logo, fica minha sugestão a netmake de trocar caracteres acentuados na hora de salvar no disco por um conjunto que seja identificável pelo scriptcase e o sistema de arquivos independente do collate configurado no shell.
Isto ajudaria muitas pessoas que usam o scritpcase
--
Alexandre Pereira Bühler
https://www.simaoebuhler.com.br
Hospedagem compartilhada Scriptcase desenvolvimento e produção. Temos servidores dedicados Scriptcase.
Eu RTFM todo dia e você?

saulobborges

  • Expert
  • *****
  • Mensagens: 1392
    • SGi Sistemas
    • Email
Re:Envio de arquivo
« Responder #32 Online: Fevereiro 26, 2016, 01:28:15 pm »
Mais uma vez matando a cobra e mostrando pau eim Alexandre!!! Parabéns!

Alexandre Pereira Bühler

  • Expert
  • *****
  • Mensagens: 1638
  • Nunca estabeleça um teto para os seus rendimentos.
    • Simão & Bühler Ltda
    • Email
Re:Envio de arquivo
« Responder #33 Online: Fevereiro 26, 2016, 01:55:31 pm »
Obrigado Saulo
--
Alexandre Pereira Bühler
https://www.simaoebuhler.com.br
Hospedagem compartilhada Scriptcase desenvolvimento e produção. Temos servidores dedicados Scriptcase.
Eu RTFM todo dia e você?

Jailton

  • Expert
  • *****
  • Mensagens: 2030
Re:Envio de arquivo
« Responder #34 Online: Fevereiro 26, 2016, 02:35:38 pm »

Logo, fica minha sugestão a netmake de trocar caracteres acentuados na hora de salvar no disco por um conjunto que seja identificável pelo scriptcase e o sistema de arquivos independente do collate configurado no shell.
Isto ajudaria muitas pessoas que usam o scritpcase


Valeu, mas como isso vai demorar hehe.... até a V20 já vou deixar o server redondo...fora se eles mudarem agora quem tem caracter com acento lá já gravado em utf8 vai ficar tudo bagunçado.


apache/php (utf8) + shell (utf8) = funciona o upload

Faltou o MySQL/MariaDB Default (utf8). ehhe


« Última modificação: Fevereiro 26, 2016, 02:45:05 pm por Jailton »
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

Alexandre Pereira Bühler

  • Expert
  • *****
  • Mensagens: 1638
  • Nunca estabeleça um teto para os seus rendimentos.
    • Simão & Bühler Ltda
    • Email
Re:Envio de arquivo
« Responder #35 Online: Fevereiro 26, 2016, 05:21:25 pm »
Verdade Jailton,
Mas ainda assim haverá pessoas pegas de surpresa como eu.
Minhas bases são todas is-8859-1 e as apps também, mas como eu já estava num processo de migração  para utf8 não será tão ruim.
Eu sabia que cedo ou tarde teria que adotar de vez utf8.
--
Alexandre Pereira Bühler
https://www.simaoebuhler.com.br
Hospedagem compartilhada Scriptcase desenvolvimento e produção. Temos servidores dedicados Scriptcase.
Eu RTFM todo dia e você?