wzskynet#163.com
·php escapeshellcmd多字节编码漏洞
·详细讲解PHP中缓存技术的应用
·利用PHP V5开发多任务应用程序
·详细解析 PHP 向 MySQL 发送数据过程
·PHP实现静态发布的方法浅谈
你一定会笑我“下载文件”如此简单都值得说?当然并不是想你想象的那么简单。例如你希望客户要填完一份表格,才可以下载某一文件,你第一个想法一定是用 “Redirect”的方法,先检查表格是否已经填写完毕和完整,然后就将网址指到该文件,这样客户才能下载,例如笔者编写的以下代码:
复制代码 代码如下:
<?
// 检查 FORM 是否全部填写完毕...
if ($form_completed) {
Header("Location: https://www./download/info_check.exe");
exit;
}
?>
或者是以下的情况:
复制代码 代码如下:
<a href="http://www.yourwebl.com/users/download.php?id=124524">开始下载文件</a>
这里利用了ID方式接收要下载文件的编号,然后用“Redirect”的方式连接到实际的网址。
如果你想做一个关于“网上购物”的电子商务网站,考虑安全问题,你不想用户直接复制网址下载该文件,笔者建议你使用PHP直接读取该实际文件然后下载的方法去做。程序如下:
复制代码 代码如下:
<?
$file_name = "info_check.exe";
$file_dir = "/public/www/download/";
if (!file_exists($file_dir . $file_name)) { //检查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen($file_dir . $file_name,"r"); // 打开文件
// 输入文件标签
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length: ".filesize($file_dir . $file_name));
Header("Content-Disposition: attachment; filename=" . $file_name);
// 输出文件内容
echo fread($file,filesize($file_dir . $file_name));
fclose($file);
exit;}
?>
而如果文件路径是“http”或者“ftp” 网址的话,则源代码会有少许改变,程序如下:
复制代码 代码如下:
<?
$file_name = "info_check.exe";
$file_dir = "https://www./";
$file = @ fopen($file_dir . $file_name,"r");
if (!$file) {
echo "文件找不到";
} else {
Header("Content-type: application/octet-stream");
Header("Content-Disposition: attachment; filename=" . $file_name);
while (!feof ($file)) {
echo fread($file,50000);
}
fclose ($file);
}
?>
这样就可以用PHP直接输出文件了。
实现php文件安全下载!
复制代码 代码如下:
public function downloads($name){
$name_tmp = explode("_",$name);
$type = $name_tmp[0];
$file_time = explode(".",$name_tmp[3]);
$file_time = $file_time[0];
$file_date = date("Y/md",$file_time);
$file_dir = SITE_PATH."/data/uploads/$type/$file_date/";
if (!file_exists($file_dir.$name)){
header("Content-type: text/html; charset=utf-8");
echo "File not found!";
exit;
} else {
$file = fopen($file_dir.$name,"r");
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length: ".filesize($file_dir . $name));
Header("Content-Disposition: attachment; filename=".$name);
echo fread($file, filesize($file_dir.$name));
fclose($file);
}
}
相关推荐:
AI搜索相似文章怎么做?揭秘高效文章检索的核心技术!,程式ai软件
【SEO优化全攻略】提升网站流量的终极秘籍,带你轻松玩转搜索引擎优化!,金融网站推广维护
seo相关知识是什么,seo相关技术 ,ai写作讯飞星火认知大模型
什么是“神马关键词”?如何用它提升你的网络营销效果?,新闻发布网站怎么做推广
ChatGPT网站突然不能用了?如何快速解决这个问题,让你重新畅享AI对话!,ai新建多个画板
优化整站,让网站飞速增长,打造行业竞争力,广东网站建设与维护
ChatGPT与讯飞:AI语音与智能对话的完美融合,ai直角变圆角
WPJam:打破网站管理的壁垒,打造极致用户体验,广东谷歌seo工具
GPT-3.5网页版:让你与人工智能零距离接触,ai英语学
自动写文章AI:高效创作工具,开启写作新纪元
WP原创:打造属于你的独特网站,从这里开始!,一个网站推广一个月需要多少钱
不利于seo是什么,不属于seo对网店推广的作用 ,ai渐变下载
“爱站”:开启网站优化与流量增长的新纪元,seo入门ppt
SEO网络营销:如何通过精准优化提升品牌价值,青州建设网站电话
SEO已经成为数字营销的核心,如何利用SEO提升网站流量和转化率,含山网站优化推广
SEO快排还有效果吗揭秘快速排名的真相与未来趋势,ai人像波普
SEO挣钱之道:如何通过SEO实现网络盈利,宁晋网站建设商家
Chato1免费么?揭开这款AI聊天机器人的神秘面纱,交个朋友ai写作
SEO关键词是什么意思?全面解析SEO关键字的核心作用,华为ai音箱 百度ai音箱
SEO广告:如何借助SEO提升品牌曝光与销售业绩?,网站推广怎么选择
ChatGPT页面不自动显示最新消息:如何解决这一困扰,提升使用体验?,斑马ai幼儿百度云网盘
AI免费试用不需要登录:体验智能科技的魅力,轻松开启未来,华为ai身材
ChatGPT当前不可用?背后的原因与解决方案全解析,ai propos
文章疑似AI生成怎么办?如何辨别并应对AI生成文章的挑战
seo重点工作是什么,seo重点工作是什么意思 ,棋谱检查ai
AI优化文章:如何利用人工智能提升写作效率和质量
什么是seo平台seo教程,什么是 seoseo有何价值 ,论文写作ai助手公众号
seo都有什么问题,seo都有什么问题和答案 ,ai凯旋公主下载
亚马逊站内seo是什么优化,亚马逊seo关键词优化软件 ,ai画卡通章鱼
ChatGPT无法使用?了解原因及解决方法,轻松恢复智能对话体验!,ai满版图案
自动生成文章的AI软件,助力内容创作的未来
ChatGPT的VPN梯子:畅享全球互联网自由,打破地域限制,一直搜Ai
SEO到底怎么做?揭秘从零到精通的完整SEO优化攻略,鸟瞰ai
什么是SEO优化方案,seo的优化方案 ,ai emorobot
AI批量文章工具,让写作变得高效与轻松,cs机器人ai
seo适合什么人做,哪种seo做得好 ,晋城ai论文写作免费
SEO课:让你从小白变成搜索引擎优化高手,推广自媒体营销计划
SEO薪资这些,你也能月入过万!,天水网站建设公司
AI网页生成:轻松构建智能网站,提升品牌竞争力,杭州专业ai智能教育
ChatGPT回答问题,网页无法线下滚动?解决方案轻松get!,谷歌AI铃声
用AI修改文章,提升写作效率与质量的新时代
ChatGPT进不去怎么办?解决方案与技巧,轻松畅享智能对话,ai va
AI人工智能文章生成平台,释放创作无限可能
ChatGPT破解:让AI打破语言与思维的边界,ai模板vis
怎么分辨文章是不是AI写的?五大技巧揭开真相
什么是seo模型,seo模块总结 ,ai技术授课
seo链接有什么用,seo外链是什么意思 ,one ai写作
seo的推广工具,seo推广软件哪个好 ,国内ai写作论文怎么样
SEO百度优化:让你的品牌在搜索引擎中脱颖而出,日照网站推广策划
ChatGPT不能加载过去的对话,如何提升你的使用体验?,ai智能衣服