tamura 0 Denunciar post Postado Outubro 5, 2007 Olá! Estou desenvolvendo uma aplicação que envia arquivos pesados via FTP do PHP. O tamanho dos arquivos pode exceder os 10mb. O post_max_size, que é o tamanho máximo de envio de dados via form no método POST, é de 8M no servidor que contratei. No início, tentei enviar os pesados arquivos e enviar via move_uploaded_files, mas não consegui por causa do limite do post_max_size definido pelo servidor. Através de várias pesquisas, atentei utilizar o método FTP. Fiz o seguinte esquema: No formulário de envio, havia colocado o enctype pra multypart/form-data, mas percebi que ele acaba enviando o arquivo em si. Então pensei em tirar o enctype="multypart/form-data" pra não enviar todo o arquivo em si, mas enviar somente o caminho que o input file informa (Ex: C:\qualquer pasta\arquivo pesado.zip). Na página que recebe os dados deste formulário eu obtenho via POST esta informação (C:\qualquer pasta\arquivo pesado.zip), estabeleço uma conexão FTP no servidor remoto e dou o comando ftp_put informando este arquivo que desejo enviar (C:\qualquer pasta\arquivo pesado.zip) para a pasta que eu quero enviar. Fiz os testes localmente utilizando o pacote WAMP (ou o próprio EasyPHP) e DEU TUDO CERTO! Prontamente enviei para testar este recurso no servidor, seguindo os mesmos passos de envio desse arquivo (C:\qualquer pasta\arquivo pesado.zip), e... ele dá um erro na linha do ftp_put dizendo: Warning: ftp_put(C:\qualquer pasta\arquivo pesado.zip) [function.ftp-put]: failed to open stream: No such file or directory in classeftp.inc.php on line 24 Agora não sei o que faço... por que será que quando faço teste aqui no local dá certo e no remoto está dando errado? Qualquer dúvida de que eu escrevi, por favor me perguntem... Obrigado pela paciência! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 5, 2007 obviamente que nao funcionará se o arquivo no existena sua maquina local funcionou porque sua maquina local serviu como cliente e servidor ao mesmo tempo entendeu ? Compartilhar este post Link para o post Compartilhar em outros sites
T.P. 0 Denunciar post Postado Outubro 5, 2007 na verdade isso aconteceu porque o local pra onde você esta mandando o arquivo é invalido, você temque colocar o caminho real que o ftp do seu servidor usa.... tive esse problema e resolvi depois de muitos testes com caminhos diferentes... Compartilhar este post Link para o post Compartilhar em outros sites
tamura 0 Denunciar post Postado Outubro 5, 2007 Hmmm... não sabia disso...Então teria uma maneira de informar no ftp_put para enviar este arquivo da minha máquina para o servidor?T. P., como é esse caminho real que o ftp do servidor usa ou pode usar?Ou e vocês têm uma outra maneira de eu poder enviar este arquivo via PHP (porque quem vai usar esse sistema de envio desses arquivos saberá somente indicar o arquivo e clicar em "Enviar", meio leigo, sabe...)?Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 6, 2007 você deve fazer upload pro servidor Compartilhar este post Link para o post Compartilhar em outros sites
tamura 0 Denunciar post Postado Outubro 9, 2007 você deve fazer upload pro servidorEntão, não tem como o PHP enviar arquivos grandes para o servidor?Mas o que me chamou atenção foi o que o T. P. citou:tive esse problema e resolvi depois de muitos testes com caminhos diferentes...Como você resolveu, T. P?Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 11, 2007 Então, não tem como o PHP enviar arquivos grandes para o servidor?é possível simjá desenvolvi aplicativos em PHP pra empresas que trocavam arquivos de 4 a 10GBos fatores principais - servidor - largura de banda do client-server, server-clientmas tive diversos problemas e parei o desenvolvimento. o problema não é constante. O que acontecia era oscilações da velocidade de conexão do usuario, que causa corrompimento ou interrompimento do envio.optei pelo mais seguro usando software FTP-client Compartilhar este post Link para o post Compartilhar em outros sites