Ir para conteúdo

Arquivado

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

Tamanini

download de pdf?

Recommended Posts

Como faço para fazer um download de um pdf sem precisar que descarregue primeiro o arquivo na página? Quando clicar no link já abre a janela para download.Tem como?[]'s,Marcelo Tamanini

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que tem (eu disse ACHO)Se cv tem o Winzip ultima versao, ele faz um tipo de conversao de arquivos em .exe, mas o arquivo precisa estar zipado ( :( )Feito isso, click sobre o arquivo c/ o botao direito e dai, você vera o item "winzip" e logo do lado uma setinha, passe o mouse sobre ele e vera mais opções, escolha a "create self-extractor (exe) feito isso, ele cria um arquivo executavel, é é so inserir no servidor que, ele é baixado, em alguns casos, ele ja baixa se auto abrindo!Se isso te ajudar, beleza, se nao ajudar, beleza do mesmo jeitoNo modo mais simples, apenas coloque o arquivo em .zip e pronto![]sRodney

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é isso que eu quero!Eu preciso de um script, talvez em js ou através de html com os meta tags, que baixe o arquivo .pdf para o micro sem precisar abrir no site primeiro, tem como?Isso sem o arquivo pdf estar compactado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não é isso que eu quero!Eu preciso de um script, talvez em js ou através de html com os meta tags, que baixe o arquivo .pdf para o micro sem precisar abrir no site primeiro, tem como?Isso sem o arquivo pdf estar compactado!

eu tenhu qse certeza q você consegue fazer isso por meta tag...... mais naun lembro como faz <_< pq eu tava estudando php esses dias... e tem um tópico lah... q voce define um header no comeco da pagina com um arquivo q voce quer e ele jah abre a janela de download do browser... se achar aki te mando...

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora entendi, eis o codigo:

 

Abaixo o codigo, copie e cole logo apos a tag </head>

 

<script language="JavaScript">

<!--

function MM_goToURL() {

for (var i=0; i< (MM_goToURL.arguments.length - 1); i+=100)

eval(MM_goToURL.arguments+".location='"+MM_goToURL.arguments[i+1]+"'");

document.MM_returnValue = false;

}

//-->

</script>

<body bgcolor="ffffff" onLoad="MM_goToURL('parent','nome-arquivo_aqui.zip');return document.MM_returnValue">

 

 

divirta-se

[]s

Rodney

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vlw pela ajuda Rodney, mas esse código ele ainda faz com que abra o pdf no site, e eu quero que abre uma janela para salvar o arquivo no hd? Será que isso é possível ou só com php ou deixando compactado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Achei isso no sitema rau-tu de linguagens da UNICAMP do qual tomo conta.

 

A resposta foi dada por João Sebastião de Oliveira Bueno, na area de javascript. endereço: http://www.rau-tu.unicamp.br/linguagens/re...1&qid=3832&key=

 

 

Bom,

oficialmente não existe, e você vai ver que os sites por ai colocam explicitamente a instrução para o usuário clicar no link segurando "shift" - dessa forma a janela de salvar aparece.

 

No entanto, eu posso imaginar um hack para que o comportamento seja o que você está pedindo.

 

Trata-se de, ao oferecer o link, fornecer um MIMEtype para o arquivo texto diferente de TEXT/Plain. Um MIME/TYype deum tipode arquivo que normalmente seria salvo no disco, por exemplo: application/octet-stream .

 

O problema é que para mudar o MIMEType do arquivo, você tem que fornece-lo enviando manualmente os headers HTTP ao servidor de HTTP - o que não pode ser feito com HTML estática. Em outras palavras: você tem que usar um script CGI para fornecer esse MIMEType modificado.

 

Se você tiver permissões, e configuração pronta, para CGI no seu servidor, esse script é trivial: tudo o que ele tem que fazer é imprimir em Stdout o header HTTP para o MIMEType desejado, uma linha em branco, e depois o seu arquivo texto.

 

Achoq ue funcionaria até em shell mesmo:

#!/bin/sh

echo content: application/octet-stream

echo

cat ../SCHUSTER.TXT

 

--

Grave o acima com permissão de execução (em ambiente Unix/GNU), no diretório de CGI (ex. CGI-BIN/), e chame-o com uma url do tipo:

http://minha.pagina.com/CGI-BIN/script.sh

 

[]'s

http://forum.imasters.com.br/public/style_emoticons/default/ninja.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, então minha alternativa será deixar compactado e caso o cliente não tenha um programa de descompactar, deixarei o winzip para ele instalar!Eu tenho que gravar todo o meu site em um cd, mas como está em php, teria que deixar já configurado no cd, interpretador do php+apache+mysql, para que funcionasse correto, então estou deixando todo em html puro e retirando as partes dinâmicas em php+mysql! Como meus patrões querem algo que rode em qualquer micro que tenha um navegador sem instalar nada, apenas colocando o cd, então tive que deixar em html.E tem muitos clientes que não tem internet, o cd então ficaria como uma apresentação ou informações sobre a empresa, como produtos, manuais dos aparelhos, etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

E outra coisa, com shift pressionado ele ainda descarrega o arquivo pdf no site, a única diferença, é que com o shift ele abre em uma nova janela!

Compartilhar este post


Link para o post
Compartilhar em outros sites

em javascript nem rola kra, mas c for em PHP, tenta isso:<?php$arquivo = "arquivo.pdf";$tamanho = filesize($arquivo); // pega o tamanho do arquivo em bytes// enviar os cabeçalhos HTTP para o browserheader("Content-Type: application/save"); header("Content-Length: $tamanho");header("Content-Disposition: attachment; filename=$arquivo"); //header("Content-Transfer-Encoding: binary");// abrir e enviar o arquivo$fp = fopen("$arquivo", "r"); fpassthru($fp); fclose($fp);?>você usa da seguinte forma, crie um arquivo com o conteudo acima (vamos chamado de download.php), e depois crie um link para o download.phpn esqueca kra, o download.php n pode ter nada + nem nada - q isso q eu coloquei (n inventa de <html><head>... c você coloca qualquer uma dessas tags estraga o codigo)flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu consegui utilizando o seguinte:

 

PHP [/tr][tr]<?

require("../includes/connection.php");

 

$sql = "SELECT Arquivo FROM download WHERE IDDown='$_GET[id]'";

$res = mysql_query($sql);

$row = mysql_fetch_array($res);

$arquivo = $row["Arquivo"];

$tamanho = filesize($arquivo);

 

header("Content-type: Application/unknown");

header("Content-length: $tamanho");

header("Content-Disposition: attachment; filename=$arquivo");

header("Content-Description: PHP Generated Data");

readfile($arquivo);

 

?>

[/tr]

 

Só falta uma coisa, como o link abre um popup com este código .. como fechar a janela após o cara aceitar o download?

Compartilhar este post


Link para o post
Compartilhar em outros sites

q rolo só por causa disso!afffe<script> function downloadme(x){ myTempWindow = window.open(x,'','left=10000,screenX=10000'); myTempWindow.document.execCommand('SaveAs','null',x); myTempWindow.close();}downloadme("design_galleries.pdf");</script>hehehethe void

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito mais simples .. mas ainda esta com um problema ... o arquivo como link de down deve estar na mesma pasta do arquivo requisitado ...Ja tentei colocando o caminho simples 'pasta/arquivo', com http .... com patch do server ... e não funciona .. Na barra do windows eu ate vejo que abre uma janela mas ela fecha automaticamente ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, no meu aqui funcionou :D , mas só que está abrindo o arquivo em uma nova janela, e eu quero salvar o arquivo sem precisar abrir ele! <_< --<script language="JavaScript">function downloadme(x){myTempWindow = window.open(x,'','left=300,screenX=650');myTempWindow.document.execCommand('SaveAs','null',x);myTempWindow.close();}</script>--<a href="#" onClick="downloadme('downloads/dmc20V30.pdf');">teste</a>--

Compartilhar este post


Link para o post
Compartilhar em outros sites

Outra coisa ... esse script só funciona para pdf, html, txt e etc .. para zip não funciona ...Como eu poderia adpatar para .zip e outros formatos que o ie nõ lê, logo não consegue salvar ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, o Ricardo está certo, no meu win2K, fica só aparecendo na barra do windows, mas não aparece nenhuma caixa de dialogo para salvar e não consigo visualizar o arquivo, o único jeito de poder pelo menos visualizar em outra janela é configurando o window.open( ) corretamente!A caixa de dialogo para salvar só aparece se for arquivos como .doc, pelo menos no meu micro, mas valeu pela dica!

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.