Home >Backend Development >PHP Tutorial >pHP文件下载代码,求各位大神给看看那错哪了

pHP文件下载代码,求各位大神给看看那错哪了

WBOY
WBOYOriginal
2016-06-13 12:14:49892browse

pHP文件下载代码,求各位大神给看看那哪里错了
   //文件下载函数
   //$file_path  文件下载路径 
   //$file_name  文件名
   //$file_sub_dir 下载文件子路径
   function down_file($file_name,$file_sub_dir){
   //如果文件名字是中文,转码
   $file_name=iconv("utf-8", "gb-2312", $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);
   
   //返回的文件
   header("Content-type: application/octet-stream");
   //按照字节大小返回
   header("Accept-Ranges: bytes");
   //返回文件大小
   header("Accept-length: $file_size");
   //客户端弹出对话框,对应的文件名
   header("Content-Disposition: attachment; file_name=".$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);
   }
file_down("1.jpg","/test/");
?>
------解决思路----------------------
Warning: fopen(C:/AppServ/www/test/) [function.fopen]: failed to open stream: Permission denied in C:\AppServ\www\test\FileDownServer.php on line 16
说的很明确了!
Permission denied 中文释义:权限被拒绝

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn