Bibi_ 0 Denunciar post Postado Dezembro 28, 2009 Oi, pessoal Preciso da ajuda de vocês. Para baixar um arquivo, eu chamo um arquivo php chamado download.php da seguinte maneira: echo "<script>window.open('download.php?arquivo=$_POST[arquivo]', '', 'width=790, height=400,top=250,left=233,copyhistory=no,status=no,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=yes');</script>"; Depois de direcionado, abre a janela para o dowload e o mesmo é concluído corretamente. No entanto, não consigo fechar a nova janela aberta... eu uso o window.close(), mas nada acontece: <? $file_path = $_GET["arquivo"]; $fname = ereg_replace( ' +', '-', basename($file_path)); header('Cache-control: private'); header('Content-Type: application/octet-stream'); header('Content-Length: '.filesize($file_path)); header('Content-Disposition: attachment; filename='.$fname); flush(); $file = fopen($_GET["arquivo"], "r"); while(!feof($file)) { echo fread($file, round(60*1024, 0)); flush(); sleep(1); } fclose($file); echo "<script>window.close(); </script>"; ?> Um colega de trabalho disse que talvez o problema seja com os headers, e que eu devo redirecioná-los para o browser. Alguém sabe como resolvo isso? Obrigada Compartilhar este post Link para o post Compartilhar em outros sites
Dee 0 Denunciar post Postado Dezembro 28, 2009 E se você criar um Link nessa janela ou um botão para quando o usuário clicar fechasse essa janela ? <input type='button' onclick='window.close()' /> Compartilhar este post Link para o post Compartilhar em outros sites
brcontainer 16 Denunciar post Postado Dezembro 29, 2009 o window.close não funciona por que a pagina não é interpretada como HTML, na verdade você acaba baixando o arquivo e no final do código binario dele vem o <script>window.close(); </script> Seu problema é mais com javascript, recomendo não usar popups, use direto geralmente o navegador nao direciona a pagina, e se usar TARGET="_BLANK" a pagina fecha sozinha ao iniciar o download e vantagem nisso, os bloqueadores de popup não bloqueiam TARGET ;) Compartilhar este post Link para o post Compartilhar em outros sites