CSV Download Link
To let people download a CSV file from a web page, a link directly to the file generally would work. ("CSV" stands for "comma-separated values". It is the type of file most often exported or imported into spreadsheet software.)
If the CSV file is in a restricted directory or there are reasons to keep the file's location secret, the link may be to a script that sends the CSV to the browser without revealing the CSV file's location.
That is the purpose of the DownloadCSV.php
script below. Link to the script and, when tapped, it will send the CSV file's content to the browser.
<?php
/* Download CSV File
October 22, 2022
Will Bontrager Software LLC
https://www.willmaster.com/
*/
$LocationOfCSV = '/subdirectory/file.csv';
$file = "{$_SERVER['DOCUMENT_ROOT']}$LocationOfCSV";
$fname = preg_replace('!^.*/!','',$file);
header('Content-Type: text/csv; charset=utf-8');
header("Content-Disposition: attachment; filename=$fname");
echo(file_get_contents($file));
exit;
?>
Copy the above code and save it as DownloadCSV.php
or other *.php
file name that you prefer. In the file, replace /subdirectory/file.csv
with the location of the CSV file to download. Specify the location relative to document root.
Upload DownloadCSV.php
to your server and make a note of its URL. To let people download the CSV file, link to DownloadCSV.php
. Example:
<a href="https://example.com/DownloadCSV.php">Download CSV</a>
(This blog post first appeared in Possibilities newsletter.)
Will Bontrager