$mm_type=application/octet-stream;
$fp = fopen($myfile,'rb');
$size = filesize($myfile);
ob_start();
header(cache-control: public, must-revalidate);
header(pragma: hack);
header(content-type: . $mm_type);
header('content-disposition: attachment; filename='.$fname.'');
header(content-transfer-encoding: binary );
if (isset($_server['http_range']) && ($_server['http_range'] != ) && preg_match(/^bytes=([0-9]+)-/i, $_server['http_range'], $match) && ($match[1]
$range = $match[1];
fseek($fp, $range);
header(http/1.1 206 partial content);
//header(date: . gmdate(d, d m y h:i:s) . gmt);
header(last-modified: .gmdate(d, d m y h:i:s, filemtime($myfile)). gmt);
header(accept-ranges: bytes);
$rangesize = ($size - $range) > 0 ? ($size - $range) : 0;
header(content-length:.$rangesize);
header(content-range: bytes .$range.'-'.($size-1)./.$size);
//header(connection: close. );
}else{
header(content-length: .(string)($size));
header(accept-ranges: bytes);
$range = 0;
}
fpassthru($fp);
ob_end_flush();
}
