[英]How to create a link that triggers file download?
當用戶單擊“下載PDF”鏈接時,我希望顯示下載提示,並且用戶可以下載該文件。
目前,用戶只是轉移到PDF文件的地址。
例如:
<a..[what goes here??]..>Download PDF</a>
似乎需要JavaScript和PHP的組合才能做到這一點。
誰能舉個例子?
使用此代碼重定向到PHP頁面:
<?php
header('Content-disposition: attachment; filename=movie.mpg');
header('Content-type: video/mpeg');
readfile('movie.mpg');
?>
您的<a href
代碼需要指向特定頁面,readfile將調用您的資源
正如旁注,我同意你不應該覆蓋瀏覽器設置,但有時當老板問,你只需要做。
如果您使用的是Apache,可以將其放入.htaccess中:
<Files *.pdf>
Header set Content-Disposition attachment
</Files>
這將發送所有PDF文檔作為下載。 必須啟用mod_headers 。
You can also use the following code:
<?php
$file = filter_input(INPUT_GET, 'file');
$filename = basename($file);
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=\"{$filename}\";");
readfile("your file path {$file}");
?>
這將提示任何文件擴展名,如(.pdf,.docx,.zip,.csv,.txt,.html,.php等......),而不直接打開新的瀏覽器。
您可以通過向Web服務器響應添加HTTP標頭來強制瀏覽器保存鏈接的內容:
Content-Disposition: attachment; filename=<default filename to save as>
另一方面,我並沒有真正看到覆蓋用戶瀏覽器配置的重點,這通常會告訴我們默認情況下是否應在瀏覽器中打開PDF文檔,在單獨的PDF查看器中打開或保存到磁盤。
您可以在標簽上使用HTML5 download
屬性。
<a href="http://love4cats.com/kitten-catalogue.pdf" download>Download the CATalogue</a>
您應該檢查分析並確保目標瀏覽器支持該屬性。 有關瀏覽器支持,請參閱caniuse.com條目頁面。
目前尚不清楚你的意思
目前,用戶只是轉移到PDF文件的地址。
但我建議一個簡單的方法:
<a href='http://example.com/download.pdf'>Download PDF</a>
下載或打開文件的選擇更多是瀏覽器的設置。
我不相信你的問題有一個神奇的javascript / PHP解決方案,即vanilla HTML:
<a href="docco.pdf" title="this is a link to a pdf">download the PDF</a>
將執行所需的操作,它將指示瀏覽器請求資源“docco.pdf”,由瀏覽器(和任何插件)來做這件事。
例如,有一個firefox插件“ PDF下載 ”,它為用戶提供了如何處理彈出窗口的選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.