Problema no download de ficheiros [php]

toblesu

Power Member
Boas,

Mais um probelma....

Tenho um problema num código de download que já funcionou antes......

código de UPLOAD:
Código:
[COLOR=DarkOrange]$titulo=$_FILES['arquivo']['name'];
$aplication=$_FILES['arquivo']['type'];      
$name = ereg_replace("[^a-zA-Z0-9_.]", "", strtr($titulo, "áàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "aaaaeeiooouucAAAAEEIOOOUUC_"));    
$uploaddir = "docs_folder/users_folder/".$username."/"; 
$uploadfile = $uploaddir . $name;  
if(move_uploaded_file($_FILES['arquivo']['tmp_name'], $uploadfile)) {                                 
            $user_man->addUserdoc($name, $aplication, $_POST['docid'], $_POST['indexid']); 
}[/COLOR]
insere tudo bem na BD.

código de DOWNLOAD:
Código:
[COLOR=White] [COLOR=DarkOrange]$lista_resultado = $user_man->getDocumentsById($docid);        
$username = $_SESSION['user_panel']; [/COLOR]    
[COLOR=DarkOrange]foreach ($lista_resultado as $row){             
       echo     $name = $row['name']; 
       echo $aplication = $row['aplication'];
} 
             
$readdir = 'docs_folder/users_folder/'.$username.'/'.$name;    
header("Content-Type: application/force-download"); 
header ('Content-type: '.$aplication); 
header ('Content-Disposition: attachment; filename='.$name); 
             
// The source of the attachment  
readfile ($readdir);
[/COLOR][/COLOR]
não sei que raio possa ter mal que ele não faz nada bem o Download.... melhor faz o download mas o ficheiro aparece corrompido e as vezes não abre sequer... e quando abre não mostra o verdadeiro conteúdo, codifica-o e ainda insere parte meu código.....

Não percebo o problema, não sei se passa mal o tipo de ficheiro para a base de Dados.... não entendo e mais quando este código já funcionou anteriormente noutras aplicações... :S

Se me puderem ajudar...
Obrigado.
:)
 
Última edição pelo moderador:
Solução encontrada....

inclusão de duas linhas antes do readfile e uma outra após o readfile...
fica aqui a resolução para quem tiver o mesmo problema:


(...)
ob_clean();
flush();

// The source of the attachment
readfile ($readdir);
exit;
}
 
Back
Topo