中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在php中利用JavaScript實現一個無刷新下載文件功能

發布時間:2021-02-08 15:26:37 來源:億速云 閱讀:159 作者:Leah 欄目:開發技術

怎么在php中利用JavaScript實現一個無刷新下載文件功能?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

服務器端頁面

步驟就是,設置頭文件參數,然后讀入并輸出文件。下面代碼的file_get_contents可以使用fread,fclose代替。

download.php

<?php
$filename = $_GET['filename'];
$path = __DIR__."/file/".$filename;
Header( "Content-type: application/octet-stream");
Header( "Accept-Ranges: bytes ");
Header( "Accept-Length: " .filesize($filename));
header( "Content-Disposition: attachment; filename={$filename}");
echo file_get_contents($filename);

前端頁面

在很多時候,我們下載文件的操作,都是在前端頁面直接點擊下載的,而不是專門跳轉到上面的download.php去下載。

所以我們需要在前端實現無刷新訪問download.php來下載文件,通過隱藏的iframe來實現是不錯的方式。下面是代碼:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<a href="javascript:download_file('http://localhost/download.php?filename=\" rel="external nofollow" 測試文件.doc\"')">下載</a>
<script type="text/javascript">
  function download_file(url)
  {
    if (typeof (download_file.iframe) == "undefined")
    {
      var iframe = document.createElement("iframe");
      download_file.iframe = iframe;
      document.body.appendChild(download_file.iframe);
    }
    //alert(download_file.iframe);
    download_file.iframe.src = url;
    download_file.iframe.style.display = "none";
  }
</script>
</body>
</html>

file_get_contents先讀取,然后echo的方式。可以使用readfile函數代替,效率更高。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

无锡市| 玉环县| 枣阳市| 承德市| 宁安市| 唐山市| 白沙| 特克斯县| 华阴市| 桦川县| 白朗县| 临江市| 东兰县| 中卫市| 彭泽县| 皋兰县| 利川市| 墨竹工卡县| 清苑县| 焦作市| 郧西县| 鹤峰县| 枣阳市| 会同县| 安阳市| 曲阜市| 上蔡县| 鸡东县| 云霄县| 开化县| 克拉玛依市| 滦南县| 同仁县| 西平县| 海淀区| 台北县| 田阳县| 本溪市| 定安县| 连江县| 泸定县|