üst satırlarına get ile id çekip veritabanı sorgusundan sonra aşağıdakileri yazarak deneyebilir misiniz bi?

$dizin = '/home/someuser/products/data.tar.gz'; // dosya konumu
$mm_tip="application/octet-stream"; // dosya türüne göre değiştirin ama çoğu durumda gerekmez

header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Type: " . $mm_tip);
header("Content-Length: " .(string)(filesize($dizin)) );
header('Content-Disposition: attachment; filename="'.basename($dizin).'"');
header("Content-Transfer-Encoding: binary\n");

readfile($dizin);

exit();