luizbr Postado Janeiro 30, 2014 Denunciar Share Postado Janeiro 30, 2014 (editado) Boa noite a todos. tenho uma sessão de gest post em meu site com botão de upload onde as pessoas enviam arquivos pdf. Porem estes arquivos estão sendo gravados dentro da pasta 'meusite/uploads' Como faco pra que estes arquivos sejam armazenados em outro host? Exemplo:No meusite1.com (hospedado no host A) tem um botao de upload "envie o arquivo" Ao enviar este arquivo,ele é gravado no meusite2.com(hospedado no host dois ) Como posso fazer isso? Editado Janeiro 30, 2014 por luizbr Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Ciro Postado Janeiro 30, 2014 Denunciar Share Postado Janeiro 30, 2014 Você pode enviar utilizando a bilbioteca FTP do PHP (vide exemplo abaixo). Ou alguma API de envio, caso o Host B aceite isso. Dá uma olhada na documentação que tem vários exemplos usando FTP. A seguir um exemplo básico para entendimento: <?php // define nome do arquivo no servidor local $file = '/home/path/nome-do-arquivo-local.jpg'; // copia arquivo para o servidor local copy($_FILES['arquivo']['tmp_name'], $file); // dados do ftp $ftp_server="ftp.host-b.com"; $ftp_user_name="login-host-b"; $ftp_user_pass="senha-host-b"; // nome do arquivo e path do host-b $remote_file = '/public_html/path/nome-do-arquivo-remoto.jpg'; // conecta ao servidor ftp $conn_id = ftp_connect($ftp_server); // envia dados de acesso (login e senha) $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // envia um arquivo if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) { echo "arquivo enviado com sucesso: $file\n"; exit; } else { echo "ocorreu um erro durante o envio: $file\n"; exit; } // encerra conexao ftp_close($conn_id); ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 luizbr Postado Janeiro 30, 2014 Autor Denunciar Share Postado Janeiro 30, 2014 Ola Ciro,devo criar um arquivo php com o codigo acima e coloca-lo no host A ou no host B ? Na action do meu formulario de envio devo colocar o caminho deste arquivo php? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 luizbr Postado Janeiro 31, 2014 Autor Denunciar Share Postado Janeiro 31, 2014 na verdade,na hospedagem A eu uso o plugin 'gravity forms' do wordpress,onde eu crio o formulario de envio e o usuario envia o arquivo para a hospedagem B. o form <input type='submit' id='gform_submit_button_1' class='button gform_button' value='Submit' tabindex='2' onclick='if(window["gf_submitting_1"]){return false;} window["gf_submitting_1"]=true; '/> <input type='hidden' class='gform_hidden' name='is_submit_1' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='1' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_1' value='WyJhOjA6e30iLCI0MjE2YjExMzI5MTE3OGQ1NzhmNGEyZmZhMWZkODRkZCJd' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_1' id='gform_target_page_number_1' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_1' id='gform_source_page_number_1' value='1' /> <input type='hidden' name='gform_field_values' value='' /> e no functions.php o codigo para enviar o arquivo para a hospedagem B <?php add_filter("gform_upload_path", "change_upload_path", 20, 2); function change_upload_path($path_info, $form_id){ $path_info["path"] = "arquivospdf/"; $path_info["url"] = "http:/www.HOSPEDAGEMB.com.br"; return $path_info; } ?> a url do arquivo está sendo criada (http://www.arquivodahospedagemB.com/arquivoenviado.pdf) porém o arquivo não está aparecendo na hospedagem B. O arquivo php que cria a funcao do gravity forms http://pastebin.com/1L5JECpe Quando tento acessar a url criada apos o envio (http://www.arquivodahospedagemB.com/arquivoenviado.pdf) aparece a mensagem: Not Found The requested URL /arquivo.pdf was not found on this server. Apache Server at arquivodahospedagemB.com Port 80 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 luizbr Postado Fevereiro 2, 2014 Autor Denunciar Share Postado Fevereiro 2, 2014 alguém me ajuda ,to 2 semanas e não consigo resolver esse problema e não consigo :( Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
luizbr
Link para o comentário
Compartilhar em outros sites
4 respostass 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.