2011-03-14 80 views
0

這裏是我的下載功能的代碼片段。它會下載文件,但有時候我會嘗試打開下載的文件,但我得到一個錯誤。它似乎文件已損壞..有人可以告訴我什麼是錯的代碼?從數據庫codeigniter下載文件

function download($fid){ 
    $query= $this->db->get_where('files',array('fid' => $fid)); 

    $row = $query->result(); 
    header("Content-Type: ". $row[0]->type); 
    header("Content-Length: ". $row[0]->size); 
    header("Content-Disposition: attachment; filename=". $row[0]->name); 

    // Print data 
    echo $row[0]->content; 

    //Free the mysql resources 
    mysql_free_result($result); 
    //redirect('index.php/files/search/'.$fid); 
} 

回答

1

檢查$row[0]->type, $row->[0]->size, $row[0]->name(註釋掉所有頭()調用和轉儲$row),你allso不是測試,如果$query->result()返回一個有效的結果,allso檢查是否有任何PHP警告或通知,allso檢查如果有,你打電話之前header("Content-Type媒體鏈接發送給瀏覽器的所有頭......

0

如果您確信您的要求得到且只有1個排,儘量選用:

$query->row(); 
在PLAC

e的

$query->result();