Ora bem cá estou eu mais uma vez a chatear a malta, com uma pergunta algo idiota, mas já perdi a manhã toda nisto e não consegui levar a minha ideia a avante.
Tenho uns ficheiros em python num directório dentro do do /varwww/ e tenho uma página em php que de entre várias coisas (tem mais código php para executar outras tarefas) queria que me permitisse fazer o download do script selecionado.
Para selecionar o script uso um dropdown com um botão submit que quando carrego devia fazer o download do ficheiro python, tenho o seguinte código para me permitir fazer o download do script inserido no ficheiro php:
Código (PHP):
O que me acontece é que o conteúdo do ficheiro é mostrado nesta mesma página php e tendo em conta este facto acho que está tudo a funcionar, excepto o facto de não aparecer a janela que eu queria a permitir abrir o ficheiro fazer o download do mesmo.
Já vi em vários sítios e já experimentei que pondo apenas estas linhas num ficheiro php (download.php), gerando um link html para esse ficheiro e clicando com um rato nesse link aí sim aparece a janela que eu pretendo.
A minha questão é mesmo como conseguir forçar o download de uma forma mais elegante, em que não seja obrigado a clicar no lick, já que tive que escolher o ficheiro..
Já tentei em vez de mostrar o link em html para o download.php, utilizar a tag inlcude
Código (PHP):
Será que é impossível fazer o que pretendo?
Desde já peço desculpa por me alongar, e agradeço todas as ajudas.
Tenho uns ficheiros em python num directório dentro do do /varwww/ e tenho uma página em php que de entre várias coisas (tem mais código php para executar outras tarefas) queria que me permitisse fazer o download do script selecionado.
Para selecionar o script uso um dropdown com um botão submit que quando carrego devia fazer o download do ficheiro python, tenho o seguinte código para me permitir fazer o download do script inserido no ficheiro php:
Código (PHP):
//o path do ficheiro $scfno está correto!
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename="'.basename($scfno).'"');
header('Content-Transfer-Encoding: binary');
header("Content-type: text/x-python");
readfile($scfno);
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename="'.basename($scfno).'"');
header('Content-Transfer-Encoding: binary');
header("Content-type: text/x-python");
readfile($scfno);
O que me acontece é que o conteúdo do ficheiro é mostrado nesta mesma página php e tendo em conta este facto acho que está tudo a funcionar, excepto o facto de não aparecer a janela que eu queria a permitir abrir o ficheiro fazer o download do mesmo.
Já vi em vários sítios e já experimentei que pondo apenas estas linhas num ficheiro php (download.php), gerando um link html para esse ficheiro e clicando com um rato nesse link aí sim aparece a janela que eu pretendo.
A minha questão é mesmo como conseguir forçar o download de uma forma mais elegante, em que não seja obrigado a clicar no lick, já que tive que escolher o ficheiro..
Já tentei em vez de mostrar o link em html para o download.php, utilizar a tag inlcude
Código (PHP):
include(download.php);
mas sem sucesso, o conteúdo do ficheiro é na mesma mostrado na página inicial e não aparece a janela com a opção de abrir/guardar..Será que é impossível fazer o que pretendo?
Desde já peço desculpa por me alongar, e agradeço todas as ajudas.