Php force Загрузка – загрузка поврежденного файла

Привет, Я пытаюсь загрузить демо-файл, связанный с продуктом. мой код похож на этот

if(isset($_POST['submit'])){ $root = $_SERVER['DOCUMENT_ROOT']; $path = "/download/"; $path = $root.$path; $filename = $demo; $file = $path.$filename; header('Content-Type: application/force-download'); header("Content-Transfer-Encoding: Binary"); header("Content-Disposition: attachment; filename=\"".basename($file)."\";" ); header("Content-Length: ".filesize($file)); readfile($file); } 

Я могу получить имя файла, связанное с продуктом,

$ демонстрационная

После того, как пользователь отправит свою информацию, загрузка начнется автоматически. Теперь это загрузка не существующего файла или поврежденного файла с правильным именем файла. пожалуйста помоги