php实现当前页面点击下载文件的实例
php控制器中代码
public
function
downFile(
$path
=
''
){
if
(!
$path
) header(
"Location: /"
);
download(
$path
);
}
function
download(
$file_url
,
$new_name
=
''
){
if
(!isset(
$file_url
)||trim(
$file_url
)==
''
){
echo
'500'
;
}
if
(!
file_exists
(
$file_url
)){
//检查文件是否存在
echo
'404'
;
}
$file_name
=
basename
(
$file_url
);
$file_type
=
explode
(
'.'
,
$file_url
);
$file_type
=
$file_type
[
count
(
$file_type
)-1];
$file_name
=trim(
$new_name
==
''
)?
$file_name
:urlencode(
$new_name
);
$file_type
=
fopen
(
$file_url
,
'r'
);
//打开文件
//输入文件标签
header(
"Content-type: application/octet-stream"
);
header(
"Accept-Ranges: bytes"
);
header(
"Accept-Length: "
.
filesize
(
$file_url
));
header(
"Content-Disposition: attachment; filename="
.
$file_name
);
//输出文件内容
echo
fread
(
$file_type
,
filesize
(
$file_url
));
fclose(
$file_type
);
}
<iframe id=
"iframe"
src=
""
style=
"display: none;"
></iframe>
$(
function
(){
$(
'.downLoad'
).click(
function
(){
var
path = $(this).attr(
'path'
);
$(
'#iframe'
).attr(
'src'
,
"php文件路径?path="
+path);
})
})
php实现当前页面点击下载文件的实例的更多相关文章
- HTML a标签链接 设置点击下载文件
通常情况下,为文件添加链接后,用户可以通过点击链接,直接将文件下载到本地,如下载 excel 表格等 <a href="/user/test/xxxx.excel">点 ...
- Android和FTP服务器交互,上传下载文件(实例demo)
今天同学说他备份了联系人的数据放在一个文件里,想把它存到服务器上,以便之后可以进行下载恢复..于是帮他写了个上传,下载文件的demo 主要是 跟FTP服务器打交道-因为这个东东有免费的可以身亲哈 1. ...
- 有关PHP中点击下载文件的小功能
最近需要在项目里加一个可以点击导出树状目录的目录结构图, 我在网上查了之后,发现基本千篇一律, 都是使用下面这种header函数, 直接去readfile() 这个文件 header('Content ...
- js 点击下载文件
下载的文件类型如果浏览器不能打开会直接下载,能打开的需要后台在响应头部进行设定. Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的 ...
- 使用js实现点击按钮下载文件
有时候我们在网页上需要增加一个下载按钮,让用户能够点击后下载页面上的资料,那么怎样才能实现功能呢?这里有两种方法: 现在需要在页面上添加一个下载按钮,点击按钮下载文件. 题外话,这个下载图标是引用的 ...
- 使用JS代码实现点击按钮下载文件
有时候我们在网页上需要增加一个下载按钮,让用户能够点击后下载页面上的资料,那么怎样才能实现功能呢?这里有两种方法: 现在需要在页面上添加一个下载按钮,点击按钮下载文件. 题外话,这个下载图标是引用的 ...
- js通过 URL下载文件
页面上一个button,点击之后触发一个function去请求数据,返回 pdf/epub 的URL,然后下载这个文件. 本来是直接用 a 写的,href里放资源地址,target设为'_blank' ...
- C#从服务器下载文件到客户端源码
1.在window窗体加个button控件,双击进去
- [iOS 多线程 & 网络 - 2.10] - ASI框架下载文件
A.ASI框架中的下载 1.实现步骤 在实际的开发中如果要使用asi框架来下载服务器上的文件,只需要执行下面简单的几个步骤即可. (1)创建请求对象:(2)设置下载文件保存的路径:(3)发送下载文件的 ...
随机推荐
- 【第一篇笔记】C# 全局容错,全局异常
网上找到两个方式,一个简单的只是做个记录,另一个能像QQ一样提交到后台. 方法一: static class Program { /// <summary> /// 应用程序的主入口点. ...
- FastDFS 注意事项
1.nginx集成FastDFS模块时,配置文件问题 检测到nginx日志: /home/soft/fastdfs-nginx-module/src/common.c, line: 155, loa ...
- MySQL慢查询分析工具pt-query-digest详解
一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog.General log.slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdu ...
- sublime介绍常用插件和快捷键
简介 Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来的,它最初被设计为一个具有丰富扩展功能的Vim. 是一个跨平台的编辑器,同时支持Windows.Linux.M ...
- Android Studio 小技巧(2):AS中Button文字默认大写的问题
问题类型 设置Layout中添加一个Button <Button android:id="@+id/bt_showerror" android:layout_width=&q ...
- Android getRunningTasks和getRunningAppProcesses失效
Android 5.0以上的getRunningTasks失效,该方法可以获得在前台运行的系统进程.可以用getRunningAppProcesses方法暂时替代. android6.0以上的getR ...
- 如何将centos7自带的firewall防火墙更换为iptables防火墙
用惯了centos6的iptables防火墙,对firewall太无感了,那么如何改回原来熟悉的iptables防火墙呢? 1.关闭firewall防火墙 [root@centos7 html]# s ...
- Excel汇总多个页卡数据到一个页卡
首先新建一个页卡放到最前面,页卡处右键,选择查看代码,选择需要汇总的页卡,输入以下代码,运行即可: 1.如果需要把全部数据都汇总到一个页卡 Sub 合并当前工作簿下的所有工作表() Applicati ...
- Lubuntu , ubuntu 搜索文件
使用命令行方式搜索 $ locate your_filename
- Objectbox Box的getAll() 函数返回emptylist() 未判断导致崩溃
最近使用了Objectbox作为新项目的数据库后台,Greendao开发团队新力作,但是Objectbox算是比较新的一个东西,现在资料也不多. 今天跟大家分享一个关于Box类的getAll()函数的 ...