不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没问题。
function down_file($file_name,$file_sub_dir){
//为防止乱码使用函数iconv
$file_name=iconv("utf-8","gb2312",$file_name);
//绝对路劲
$file_path=$_server['document_root'].$file_sub_dir.$file_name;
//打开文件
if(!file_exists($file_path)){
echo "文件不存在";
return;
}
$fp=fopen($file_path,"r");
//获取文件的大小
$file_size=filesize($file_path);
//限制下载大小10m
if($file_size>10*1021*1024){
echo "<script language="'javascript'">window.alert('过大')</script>";
return;
}
//返回的文件属性 这个header告诉浏览器要下载
header("content-type:application/octet-stream");
//按照字节大小返回
header("accept-ranges:bytes");
//返回文件大
header("accept-length:$file_size");
//这里客户端弹出对话框,对应文件名
header("content-dispositon:attachment; filename=".$file_name);
//向客户端发送数据
$buffer=1024;
//为了下载安全,我们最好做一个文件自己诶读取计数器
$file_count=0;
//这句话用于判断文件是否结束
while(!feof($fp) && ($file_size-$file_count>0) ){
$file_data=fread($fp,$buffer);
//统计读了多少个字节
$file_count+=$buffer;
//把部分数据返回给浏览器
echo $file_data;
}
//关闭文件
fclose($fp);
}
?>
------解决方案--------------------
仔细看了一下才发现
header("content-disposition: attachment; filename=". $file_name);
少了个i
0
0
不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没有关问题
相关文章
PHP读取文件并显示在网页上_实现文件内容网页显示操作【教程】
如何在 Laravel 中通过 AJAX 正确上传多个文件(含多表单场景)
怎样读取PHP源代码文件_PHP读取并显示自身源代码方法【说明】
PHP怎么导入数据库到文件夹_PHP从数据库导出到文件夹【方法】
PHP如何按行读取文本文件_PHP逐行读取文本文件详细操作【详解】
本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门AI工具
相关专题
if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。
820
2023.08.22
while的用法是“while 条件: 代码块”,条件是一个表达式,当条件为真时,执行代码块,然后再次判断条件是否为真,如果为真则继续执行代码块,直到条件为假为止。本专题为大家提供while相关的文章、下载、课程内容,供大家免费下载体验。
103
2023.09.25
fclose是一个C语言和C++中的标准库函数,用于关闭一个已经打开的文件,是文件操作中非常重要的一个函数,用于将文件流与底层文件系统分离,释放相关的资源。更多关于fclose函数的相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。
340
2023.11.30
fclose是一个C语言和C++中的标准库函数,用于关闭一个已经打开的文件,是文件操作中非常重要的一个函数,用于将文件流与底层文件系统分离,释放相关的资源。更多关于fclose函数的相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。
340
2023.11.30
length函数用于返回指定字符串的字符数或字节数。可以用于计算字符串的长度,以便在查询和处理字符串数据时进行操作和判断。 需要注意的是length函数计算的是字符串的字符数,而不是字节数。对于多字节字符集,一个字符可能由多个字节组成。因此,length函数在计算字符串长度时会将多字节字符作为一个字符来计算。更多关于length函数的用法,大家可以阅读本专题下面的文章。
951
2023.09.19
数据库三范式是一种设计规范,用于规范化关系型数据库中的数据结构,它通过消除冗余数据、提高数据库性能和数据一致性,提供了一种有效的数据库设计方法。本专题提供数据库三范式相关的文章、下载和课程。
374
2023.06.29
删除数据库是指在MySQL中完全移除一个数据库及其所包含的所有数据和结构,作用包括:1、释放存储空间;2、确保数据的安全性;3、提高数据库的整体性能,加速查询和操作的执行速度。尽管删除数据库具有一些好处,但在执行任何删除操作之前,务必谨慎操作,并备份重要的数据。删除数据库将永久性地删除所有相关数据和结构,无法回滚。
2093
2023.08.14
本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。
660
2026.02.13
热门下载
相关下载
最新文章

