Download de ficheiro...

sornafix

Power Member
Boa noite,
estou tentando realizar o seguinte:
- Criação de um ficheiro excel utilizando o PHPExcel. (Cria sem problemas...)
- Depois realizar automaticamente o download do ficheiro criado...
- Regressar à página anterior...

Antigamente o código que eu tinha funcionava perfeitamente:

Código:
<script language="javascript" type="text/javascript">
window.open("excel/cliente.xlsx");
window.location.href="pesquisa.php";
</script>

Mas agora aparece uma mensagem de pop-up bloqueada, e não faz download do ficheiro, e volta à página anterior...
Alguém sabe como fazer o download do ficheiro automaticamente, sem ter que obrigar o utilizador a clicar em algum botão?
 
Boa noite,
estou tentando realizar o seguinte:
- Criação de um ficheiro excel utilizando o PHPExcel. (Cria sem problemas...)
- Depois realizar automaticamente o download do ficheiro criado...
- Regressar à página anterior...

Antigamente o código que eu tinha funcionava perfeitamente:

Código:
<script language="javascript" type="text/javascript">
window.open("excel/cliente.xlsx");
window.location.href="pesquisa.php";
</script>

Mas agora aparece uma mensagem de pop-up bloqueada, e não faz download do ficheiro, e volta à página anterior...
Alguém sabe como fazer o download do ficheiro automaticamente, sem ter que obrigar o utilizador a clicar em algum botão?

Estás a usar o windows.open, daí ele abrir a janela nova e ser bloqueado. Usa o window.location.href como na linha de baixo.
 
Eu já tentei fazer com o window.location.href, mas não funciona..... só funciona se eu não colocar a segunda linha, ou seja, para voltar para a página anterior... Porque com as duas, ele salta para anterior, mas não faz o download....
 
Eu já tentei fazer com o window.location.href, mas não funciona..... só funciona se eu não colocar a segunda linha, ou seja, para voltar para a página anterior... Porque com as duas, ele salta para anterior, mas não faz o download....

Não tinha reparado na parte de voltar à página anterior. Mudaste a configuração do browser, ou instalaste algum add-on? Se calhar o código que tinhas funcionava perfeitamente porque os pop-ups não eram bloqueados.
 
//para evitar o pop-up:
window.open("excel/cliente.xlsx", "_self");


//dar algum tempo para o download iniciar
setTimeout(function() { window.location = "pesquisa.php"; }, 2000);
 
Funcionou perfeitamente... Obrigado...
Já tinha arranjado uma solução, mas ficava foleiro, pois obrigava a redireccionar para outra página onde tinha de clicar num botão para fazer o download...
 
Back
Topo