Jquery中文网 www.jquerycn.cn
Jquery中文网 >  脚本编程  >  php  >  正文 js php实现无刷新下载功能

js php实现无刷新下载功能

发布时间:2020-05-08   编辑:www.jquerycn.cn
jquery中文网为您提供js php实现无刷新下载功能等资源,欢迎您收藏本站,我们将为您提供最新的js php实现无刷新下载功能资源

js结合php实现下载功能

服务端

步骤就是,设置头文件参数,然后读入并输出文件。下面代码的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> <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函数代替,效率更高。

以上就是js php实现无刷新下载功能的详细内容,更多请关注jquery中文网其它相关文章!

  • 本文原创发布jQuery中文网,转载请注明出处,感谢您的尊重!
  • 您可能感兴趣的文章:
    jQuery Mobile页面跳转后未加载外部JS原因分析及解决
    Jquery:ajax实现翻页无刷新功能代码
    js控制网页自动刷新 刷新一次停止刷新
    无需重新编译php加入ftp扩展的方法
    js自动刷新页面代码汇总
    基于JQuery实现异步刷新的代码(转载)
    ajax异步刷新实现更新数据库
    js刷新当前页面的几种方法
    js自动刷新当前页面方法详解
    js返回上一页并刷新的几种方法

    [关闭]