小编典典

我们这样做:首先添加此脚本。

function populateIframe(id,path)

{

var ifrm = document.getElementById(id);

ifrm.src = "download.php?path="+path;

}

将其放置在您想要下载按钮的位置(此处我们仅使用链接):

download

文件“ download.php”(需要放在您的服务器上)仅包含:

header("Content-Type: application/octet-stream");

header("Content-Disposition: attachment; filename=".$_GET['path']);

readfile($_GET['path']);

?>

因此,当您单击链接时,隐藏的iframe就会获取/打开源文件“ download.php”。以路径作为get参数。我们认为这是最好的解决方案!

应该注意的是,该解决方案的PHP部分只是一个简单的演示,可能非常非常不安全。它允许用户下载任何文件,而不仅仅是预定义的文件。这意味着他们可以下载网站本身的部分源代码,其中可能包含API凭据等。

2020-05-01

php.js 文件下载,使用JavaScript开始下载文件相关推荐

  1. js如何在浏览器中运行php文件下载,JavaScript_用JS在浏览器中创建下载文件,但受限于浏览器,很多情况下 - phpStudy...

    用JS在浏览器中创建下载文件 但受限于浏览器,很多情况下我们都只能给出个链接,让用户点击打开->另存为.如下面这个链接: file.js 用户点击这个链接的时候,浏览器会打开并显示链接指向的文件 ...

  2. js下载文件 java_[Java教程]使用js实现点击按钮下载文件

    [Java教程]使用js实现点击按钮下载文件 0 2016-11-11 19:02:54 有时候我们在网页上需要增加一个下载按钮,让用户能够点击后下载页面上的资料,那么怎样才能实现功能呢?这里有两种方 ...

  3. 使用Javascript / jQuery下载文件

    本文翻译自:Download File Using Javascript/jQuery I have a very similar requirement specified here . 我在这里指 ...

  4. JS通过window location href下载文件

    最近在写文件下载,发现前端实现下载功能是依赖于浏览器特性,而非JS特性. 前端实现文件下载主要分为以下情况 1.在页面直接点击某个元素,然后另存为,弹出下载提示框 2.直接输入网址,确定,弹出下载提示 ...

  5. 在 JavaScript 如何下载文件

    在 Web 开发中,文件下载功能是一个非常常见的功能.在本文中,将介绍在 JavaScript 中如何实现下载文件. 使用 location.href 当需要打开新页面时,在 JavaScript 中 ...

  6. asp.net mvc + javascript生成下载文件

    近期做的是对现有项目进行重构.WEB FROM改成MVC,其实也算是推倒重来了. 里面有一个导出功能,将数据输出成txt文件,供下载.原先的做法是有一个隐藏的iframe,在这个iframe的页面中设 ...

  7. java文件下载并添加水印_Java下载文件加文字水印(Excel、PDF、图片)

    一.导出Excel加文字水印 方法:通过实现准备一个带有水印的Excel文件,然后将数据覆盖该文件然后输出. 比如我准备了如下的一个带水印的模板,我起名为water.xlsx(网上有如何给Excel加 ...

  8. js实现点击自动下载文件

    原理主要是利用了a标签的download属性,可以控制在点击a标签时,自动下载(不设置download会打开新的页面) 代码实现如下 let aLink=document.createElement( ...

  9. jquery.form.js在ie8下提示下载文件

    1.后台返回html格式的json文档 也就是设置content类型为:response.setContentType("text/html"); //renderJson(res ...

最新文章

  1. KaiOS 超越 iOS 成为印度第二大移动操作系统
  2. [转载]我看到的最好的解释AngularJs中Factory和Service和Provide不同
  3. MessagePack, Protocol Buffers和Thrift序列化框架原理和比较说明
  4. linux刻录光盘空间不足,linux下刻录光盘所发生的问题及解决办法
  5. Vue2.0 UI框架Element运用之DateTimePicker(el-date-picker)初始值及时间格式转化等细节问题
  6. navicat怎么导出mysql_navicat怎么把数据库导出
  7. 3.js模式-策略模式
  8. 密码学基本概念(一)
  9. vscode 调试 C++/JavaScript
  10. primal and dual linear problem
  11. 中移动酝酿改革数据业务分成模式:SP与CP分开
  12. Linux中关机,重启,注销命令
  13. python之通过thread来实现多进程
  14. div 一段时间后自动隐藏
  15. jquery API参考手册
  16. 商汤科技——机器视觉面试
  17. 合肥工业大学java考试试题_合肥工业大学JAVA程序设计问答题.docx
  18. 绿米Aqara、智汀、Homekit等设备如何完成一键跨品牌联动
  19. PHP CURL请求慢的原因
  20. 解决Maven项目创建太慢的问题

热门文章

  1. 目标检测——YOLOV5的学习笔记(legcay)
  2. X86,X86_32,X86_64
  3. 在eclipse中使用第三方库总结
  4. Spring中Bean管理操作基于XML配置文件方法实现
  5. DW06、DW07 锂电保护IC手册电路,锂电池过充过放过流短路保护芯片电路
  6. 语义分割之图像经镜像、翻转、裁剪后像素点的位置映射
  7. C++继承机制(一)——基本语法、三种继承方式、继承哪些数据
  8. Android——Fragment的使用(上)
  9. leetcode949. Largest Time for Given Digits
  10. 14 事务控制和锁定语句