A force download script in PHP can give you more control over a file download rather than providing a direct link.
Using a force-download script, you can:
- Validate whether a user is logged in
- Track total number of download
<?php function force_download( $file, $new_name="filename.doc" ) { $dir = ""; if ((isset($file))&&(file_exists($dir.$file))) { header('Content-type: application/force-download'); header('Content-Disposition: inline; filename="' . $dir.$file . '"'); header('Content-Transfer-Encoding: Binary'); header('Content-length: '.filesize($dir.$file)); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.$new_name.'"'); readfile("$dir$file"); } else { echo "No file selected"; } } $file = 'myfile.doc'; $filename = "download"; $original_path = 'path/to/myfile.doc'; $file_new_name = $filename.".".end(explode(".",$original_path)); force_download($original_path,$file_new_name); ?>
You will need to validate that the file does not provide access to your code, files you do not want to download, and so on.
For any types of queries, you can contact us on info[at]namasteui.com.