我試圖讓.txt,.xml,.sql文件可以在同一頁面下載,就像.zip,.docx文件一樣彈出並詢問「你想下載這個文件嗎?「。 我研究並發現,這些文件的Windows默認選項在新瀏覽器中打開,但我只想在同一頁面下載。我附加了圖片,就像點擊那些.txt,.xml,.sql文件時需要彈出的圖片一樣。 這怎麼辦?任何人都有這個想法。彈出要下載的文件,點擊鏈接
回答
I have corrected by my own. Just putting the code below will successfully pop up any files to ask whether to download or not. This is my new code.
The download.php contains the code below:
<?php
$filename = $_GET["file"];
$contenttype = "application/force-download";
header("Content-Type: " . $contenttype);
header("Content-Disposition: attachment; filename=\"" . basename($filename) . "\";");
if($_GET['path'] == 'new_uploads')
readfile($_SERVER['DOCUMENT_ROOT']."50dl/admin_panel_new/assets/plupload/new_uploads/".$filename);
else
readfile($_SERVER['DOCUMENT_ROOT']."50dl/admin_panel_new/assets/plupload/assessment_uploads/".$filename);
exit();
?>
And the file.php contains this code:
<img src="<?php echo base_url();?>assets/plupload/assessment_uploads/<?php echo $files->file_name?>" title="DOWNLOAD IMAGE" height="100" width="100" onClick="window.location.href='<?php echo base_url();?>logos/download?file=<?php echo $files->file_name?>&path=assessment_uploads'" class="download"/>
This will correctly sort out the current issue.
你應該通過在要求的文件下載代碼的標頭。
$task = isset($_REQUEST['task']) ? $_REQUEST['task'] : '';
if ($task == 'download'){
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($_REQUEST['file_name']));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($_REQUEST['file_name']));
ob_clean();
flush();
readfile($_REQUEST['file_name']);
exit;}
感謝您的回答,但沒有運氣。我已經試過這個,但是這隻會下載.docx,.zip文件,但在新的瀏覽器中會打開圖像(擴展名爲.jpg,.gif,.png等),然後我們必須下載那個不是我的文件通緝。我只想讓彈出窗口詢問「下載文件」。 –
我用這個來下載圖片。檢查你的內容類型的頭。它應該是應用程序/八位字節流 – user3434478
是的,上面的代碼是可以下載圖像,但對於所有類型的擴展仍有問題。我需要能夠彈出來要求下載該文件,但不能直接在新瀏覽器中打開。但無論如何感謝您的答案。我解決了它。 :) –
You can use this and it will work like a charm .
<?php
$filename = $_GET["file"];
$contenttype = "application/force-download";
header("Content-Type: " . $contenttype);
header("Content-Disposition: attachment; filename=\"" . basename($filename) . "\";");
if($_GET['path'] == 'new_uploads')
readfile($_SERVER['DOCUMENT_ROOT']."50dl/admin_panel_new/assets/plupload/new_uploads/".$filename);
else
readfile($_SERVER['DOCUMENT_ROOT']."50dl/admin_panel_new/assets/plupload/assessment_uploads/".$filename);
exit();
?>
- 1. 鏈接按鈕點擊事件彈出
- 2. 下載XSLX文件錨點鏈接點擊Laravel 5.2
- 3. 打開iframe鏈接點擊彈出
- 4. javascript彈出警告鏈接點擊
- 5. 如何創建鏈接彈出窗口出現點擊鏈接
- 6. 使用Javascript - 使彈出的div開放點擊以下鏈接
- 7. 點擊鏈接下載圖片和文本文件
- 8. 點擊網頁鏈接下載應用程序內的文件。
- 9. 加載彈出窗口並用點擊鏈接填充信息
- 10. 如何從服務器點擊下載鏈接後刪除下載的文件
- 11. Bootstrap模式彈出不打開鏈接上彈出點擊
- 12. 單擊鏈接時彈出
- 13. 點擊鏈接並使用python下載文件
- 14. Angular2 - Html鏈接文件下載路線後,點擊
- 15. 如何在超鏈接上點擊下載.txt文件?
- 16. 文件損壞時,點擊下載鏈接
- 17. 點擊多個HREF下載鏈接
- 18. Javascript:點擊鏈接下載pdf
- 19. 帶有可點擊鏈接的iOS文本彈出框
- 20. 爲什麼我的下載鏈接需要控制點擊下載?
- 21. 如何使用下載鏈接下載帶節點的文件?
- 22. Javascript下載文件鏈接正在關閉彈出窗口之前下載彈出
- 23. 在沒有彈出窗口的情況下在ascx上下載文件鏈接
- 24. iOS郵件鏈接彈出菜單/操作表,而不是可點擊鏈接
- 25. 點擊兩個鏈接,點擊一下
- 26. 從鏈接下載文件
- 27. 如何通過點擊MVC中的鏈接下載軟件4
- 28. 下載鏈接點擊瀏覽器中打開下載窗口
- 29. 加載文件名並在點擊文件鏈接時運行
- 30. 在點擊鏈接按鈕不起作用的事件下載CSV文件
我只是想迫使在同一頁面下載等擴展名的文件。如果有人有想法,請分享。謝謝,:) –