Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

GiovannaRamos

Upload de arquivo gerado no código no servidor

Recommended Posts

Olá pessoal,  gostaria de adicionar outra função ao meu botão 'Finalizar10()' ,  por enquanto ele faz a exportação dos dados da minha 'tabela' para um Excel e salva na pasta downloads do meu computador,  alguém sabe se teria alguma forma fazer esse arquivo gerado (Excel) ao invés de  fazer download, fazer o upload no caminho do meu servidor?

 function Finalizar10()
    {
        $(document).ready(function Finalizar()
        {
            $("#btnExport").click(function exportar (e)
            {
                e.preventDefault();
                var blobData = new Blob(['\ufeff'+tabela], { type: 'application/vnd.ms-excel' });
                var url = window.URL.createObjectURL(blobData);
                var a = document.createElement('a');
                a.href = url;       
                a.download = codigo;
                a.click();
            });
        }); 
    }  

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Enviar para o servidor significa que você vai ter que enviar uma requisição para o servidor, seja ajax ou seja via GET ou mesmo a submissão de um formulário... o que me parece fazer sentido a primeiro momento... talvez algo do tipo...

$("#btnExport").click(function exportar (e) {
  e.preventDefault();
  var blobData = new Blob(['\ufeff' + tabela], { type: 'application/vnd.ms-excel' });
  var url = window.URL.createObjectURL(blobData);
  var form = $('<form method="post" action="URL_DO_SCRIPT_NO_SERVIDOR" enctype="multipart/form-data"><input type="hidden" name="tabela" value="' + encodeURIComponent(url) + '" /></form>');
  $(body).appendChild(form);
  form.submit();
});

Você ainda vai precisar fazer o tratamento do lado do servidor para receber o arquivo do formulário que deve chegar pelo item "tabela". Não cheguei a testar o código acima mas deve ser algo próximo disso, imagino que esteja usando jQuery pelo código que passou então criei o formulário utilizando a própria jQuery.

 

É possível enviar um array/objeto de dados que contem a tabela e enviar via AJAX para o servidor, dá um pouco mais de trabalho, mas parece fazer mais sentido pra mim. Algo como...

$("#btnExport").click(function exportar (e) {
  e.preventDefault();
  $.post('URL_DO_SCRIPT_QUE_VAI_RECEBER_OS_DADOS', tabela);
});

Espero ter ajudado de alguma forma... se consguir, posta pra gente sua solução.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Fala pessoal, tudo bem?
       
      Tô tentando fazer um pre-loading, mas não consigo de jeito algum.
      Quero mostrar uma animação enquanto a página é carregada e depois de caregada, esconder a animação e mostrar conteúdo.
       
      Aguém pode me ajudar?
       
      Segue código abaixo
       
       
      <!DOCTYPE html>
      <html lang="pt-br">
      <head>
          <meta charset="utf-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />  
          <title>PÁGINA LOAD</title>

      <style type="text/css">
      .loadclass {
          border: 2px solid #f3f3f3; /* Light grey */
          border-top: 4px solid #ffc401; /* Blue */
          border-radius: 50%;
          width: 50px;
          height: 50px;
          animation: spin 2s linear infinite;
      }
      @keyframes spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
      }
      .conteudo {
          display:none;
      }
      </style>
      <script>
          function loading(){
              document.getElementsByClassName('loadclass')[0].style.display="none";
              document.getElementsByClassName('conteudo').style.display="block";
          }
      </script>
      </head>
      <body onLoad="loading()">
      <div class="loadclass"></div>
      <div class="conteudo">SEU CONTEUDO AQUI DENTRO!!!</div>
      </body>
      </html>
    • Por biza
      Boa tarde, 
      tenho um problema com VBA, que gostaria que me ajudassem a resolver, pretendo com recurso a código em VBA agregar os dados  de forma a que eles sejam somados.
      Em baixo, existe uma imagem , com o exemplo do pretendido. A esquerda a tabela que possui os dados de forma massiva e a direita o pretendido.
      Será que alguém me pode auxiliar a resolver isto!
      Obrigado.

    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por Thiago Duarte
      Oi, gostaria de arrastar imagem e ao soltar formar bloco html, meu bloco de html ficaria com nome, content-1.html, content-2.html, etc
       
      Alguem pode me ajudar?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.