Ir para conteúdo

POWERED BY:

Arquivado

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

Luka Moura

Forçar download direto de mp3 e jpg

Recommended Posts

Olá!

Preciso muito da ajuda de vocês!

 

Tenho o seguinte código:

<script language="javascript">
function download(arquivo) {
    window.location = arquivo;
}
</script>

Mas no Internet explorer e no Chrome o arquivo nao vai para a lista de downloads e sim começa a tocar, qdo é mp3, ou mostra a foto, qdo é jpg.

Você sabem como eu forço o download (indo para a lista de download, salvar como ou abrir) de mp3 e jpg com javascript?

 

Obrigada!

Luka.

Compartilhar este post


Link para o post
Compartilhar em outros sites

com javascript puro acredito que não seja possível.

 

tente usar uma linguagem server-side como php, asp... com essas sei que dá para ser feito.

qual pretende utilizar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

com javascript puro acredito que não seja possível.

 

tente usar uma linguagem server-side como php, asp... com essas sei que dá para ser feito.

qual pretende utilizar ?

 

Como nao dá no javascript, vou usar php msm.

q tal?

 

Obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com a função header você consegue isso, inclusive o primeiro exemplo (Exemplo #1 Download dialog) é exatamente o que você precisa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com a função header você consegue isso, inclusive o primeiro exemplo (Exemplo #1 Download dialog) é exatamente o que você precisa.

 

Obrigada gente! Resolvi com PHP mesmo.

Abs

Luka

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai vai!!

<?php
$arquivo = $_REQUEST['arquivo'];
if ($arquivo != "") {
	$tamanho = filesize($arquivo);
	//Use the switch-generated Content-Type
	header("Content-Type: application/octet-stream");
	
	//Force the download
	$header="Content-Disposition: attachment; filename=".$arquivo;
	header($header);
	header("Content-Transfer-Encoding: binary");
	header("Content-Length: ".$tamanho);
	readfile($arquivo);
	
} else {
	echo "Arquivo inexistente";
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai vai!!

<?php
$arquivo = $_REQUEST['arquivo'];
if ($arquivo != "") {
	$tamanho = filesize($arquivo);
	//Use the switch-generated Content-Type
	header("Content-Type: application/octet-stream");
	
	//Force the download
	$header="Content-Disposition: attachment; filename=".$arquivo;
	header($header);
	header("Content-Transfer-Encoding: binary");
	header("Content-Length: ".$tamanho);
	readfile($arquivo);
	
} else {
	echo "Arquivo inexistente";
}
?>
Ai o cara informa conexao.php e pronto, tem acesso aos dados de conexão ao BD... cuidado, é básico criar um meio de filtrar o que pode ou não ser baixado, deixar dessa maneira é pedir para ter problemas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai cara informa conexao.php e pronto, tem acesso aos dados de conexão ao BD... cuidado, é básico criar um meio de filtrar o que pode ou não ser baixado, deixar dessa maneira é pedir para ter problemas.

 

Ai é problema do cara po.. segurança é problema dele, ele pediu um script que fizesse o download, eu passei, eu sei muito bem desse perigo. E nos meus scripts isso nao ocorre :)!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai é problema do cara po.. segurança é problema dele, ele pediu um script que fizesse o download, eu passei, eu sei muito bem desse perigo. E nos meus scripts isso nao ocorre :)!

 

Sim, eu postei apenas para avisar, o próprio exemplo do manual também tem esse problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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