2016-12-08 71 views
0

我有一个扩展名为PDF和DOCX的文件,当我从我的服务器上下载文件时,文件无法打开,文件大小变成1kb,在我的服务器文件夹中它有199kb大小。 IAM使用数据库来存储文件的路径和文件名,这里是我的看法要下载的文件下载的文件无法打开(损坏)codeigniter

查看

<a href="<?php echo site_url('admin/admin_controls/download_proposal/'.$hasil->ID_PEMESANAN.'')?>"><?php echo $details->FILE_NAME; ?></a> 

和我的控制器

Admin_Controls.php

function download_proposal($id_pemesanan) { 
    $this->load->helper('download'); 
    $this->load->model('gedung/gedung_model'); 
    $temp_id = substr($id_pemesanan, 7); //i cut the string because it content prefix string 
    $data = $this->gedung_model->get_proposal_by_id($temp_id); 
    $path = file_get_contents($data->PATH.$data->FILE_NAME); 
    $file_name = $data->FILE_NAME; 
    force_download($file_name, $data); 
} 

我的模型

Gedung_Model.php

public function get_proposal_by_id($id_pemesanan) { 
    $sql = "SELECT * FROM pemesanan_details WHERE ID_PEMESANAN = $id_pemesanan"; 
    $query = $this->db->query($sql); 
    $hasil = $query->row(); 
    return $hasil; 
} 

我的问题是我下载文件后,它变得损坏,无法打开,就像我说的大小变成1kb。从良好的用户的所有作品点击下载,直到下载过程

感谢咨询

+0

你确定脚本找到文件的路径吗?如果你“手动”给出文件的路径怎么办? – dimis283

+0

我在db sir中存储的路径,所以路径和文件名我存储在db的不同列中,这里是从db = http:// localhost/Warsito/assets/user-proposal/ 并在我的db中的文件名的值= antonprio_06122016_050646.pdf ,你可以看到我将它们拆分到我的file_get_content中,所以在我拆分后,以下字符串返回http:// localhost/Warsito/assets/user-proposal/antonprio_06122016_050646。 pdf –

+0

你确定$ path-> file_get_contents($ data-> PATH。$ data-> FILE_NAME)在$ data-> PATH和$ data-> FILE_NAME之间有“/”;以您的示例http://localhost/Warsito/assets/user-proposal/antonprio_06122016_050646.pdf – dimis283

回答

0

我想检查路径。您可以使用文件的绝对路径进行测试,而不是使用动态生成的路径。