It seems that firefox has a problem with spaces within the filename for downloading...
header( 'Content-Type: text/csv' );
header( 'Content-Disposition: attachment;filename='.$filename);
$fp = fopen('php://output', 'w');
fputs($fp, $csvdata);
fclose($fp);
Here is an example of a file named: Test_ Grad Fair 2_20140129_1312_607.csv
When I attempt to download the file using the code above with FireFox the following occurs. (the main problem is it removes the file extension!)
And when I try downloading it from Safari, or Chrome:
I know a solution would be to maybe do something like:
$filename = str_replace(' ', '', $filename);
However, I prefer to figure out why FireFox is having this problem, it seems kinda ridiculous that you can't have a space in a filename. Could this be like a %20
instead of a space problem?
I had a small issue while downloading a file with file name contains space. I fixed this issue using the following code. I had written this code for CodeIgniter frame work.
This will work for all type of files and all browsers including mozilla firefox and IE
The filename parameter should be enclosed in double quotes.
See http://kb.mozillazine.org/Filenames_with_spaces_are_truncated_upon_download