用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2096|回复: 0
收起左侧

[HELP] 下载文件问题,无法获取文件名及下载文件大小未知问题

[复制链接]
发表于 2014-2-22 14:13:38 | 显示全部楼层 |阅读模式
哪位能晓得问题出在哪了- -  下载文件无后缀,大小提示未知,
下载文件方法如下:

    function downfile($id) {
        $id=addslashes($id);
        $row = $this->db->one("SELECT * FROM {pre}download WHERE id = '{$id}'");
        header("Content-type:text/html;charset=utf-8");
        //用以解决中文不能显示出来的问题
        $file_name = iconv("utf-8", "gb2312", $row['title']);
        $file_path = dirname(ROOTPATH) . $row['file_url'];
      
        if (empty($file_path)) {
            echo "没有该文件文件";
            return;
        }
            
        $fp = fopen($file_path, "r");
        $file_size = filesize($file_path);
        //下载文件需要用到的头
        $mime_type = mime_file_type($row['file_url']);
        Header("Content-type: {$mime_type}");
        Header("Accept-Ranges: bytes");
        Header("Accept-Length:" . $file_size);
        Header("Content-Disposition: attachment; filename=" . $file_name);
        $buffer = 1024;
        $file_count = 0;
        //向浏览器返回数据
        while (!feof($fp) && $file_count < $file_size) {
            $file_con = fread($fp, $buffer);
            $file_count+=$buffer;
            echo $file_con;
        }
        fclose($fp);
    }

本版积分规则