По същество не можете да изведете CSV файла и връзката към него наведнъж. (Трябва да представите концепцията за „режим“ на страница и да активирате режима на изтегляне чрез ...pagename.php?mode=download или подобен. След това можете да използвате оператора switch на PHP, за да включите $_GET['mode'] във вашия скрипт.)
Въпреки това заглавката на типа на съдържанието text/csv, която сте използвали, е правилна, въпреки че може да искате да изведете заглавките Content-Length и Content-Disposition. След като изведете данните на файла, не забравяйте да спрете всяка допълнителна обработка на скрипт чрез exit
на PHP функция.
Освен това вероятно би било много по-малко караница (и със сигурност ще бъде по-бързо/по-ефективно от паметта) да използвате MySQL ИЗБЕРЕТЕ ... В ИЗВЪН ФАЙЛ съоръжение (ако имате разрешенията), вместо да използвате PHP за събиране на данните.