peppy — 2012-12-07T16:42:47-05:00 — #1
I created a script to export member's items into a tab-delimited txt file. The script works great, it escapes tabs and new lines and creates a perfect export.txt file.
Problem: I have another link so people can download the export.txt file onto their computers using:
$file = "export-files/".$member.".txt";
header('Content-Description: File Transfer');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Length: ' . filesize($file));
When I download export.txt, it appears to have newly created line-breaks that are not found in the export.txt file on the server. Does anyone know why this happens and how to prevent this?
peppy — 2012-12-07T18:44:20-05:00 — #2
Seems like if a line of about 1024 characters, a line break happens - only on my downloaded file though...
peppy — 2012-12-08T00:49:09-05:00 — #3
nevermind, figured it out. 1024 characters was the maximum length of a line in a txt file viewed on Notepad. It looked fine in the browser since it's not Notepad.
In addition, "\
" does not produce a new line in a text file, you must put in "\r\
" when writing a txt file to recognize it as linebreak. This fixed the export, file did not re-import due to a single tab at the end of the last row.
So yeah, two characters "\r" and a TAB gave me an 8 hour awful waffle... At least I learned something about a topic I've never done before!
Thanks for looking!