im writing a basic script to download csv file based on database information,
in my dashboard/index.php i use GET and switch to include pages 
so when i click on the link dashboard.php?link=export.php
i have a table with the all the data , there i have a link that i can download my csv file , my problem is that when i click to export.csv , i have an text output and not download file so i put those code :

```
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename={$filename}.csv");
header("Pragma: no-cache");
header("Expires: 0");

```

but always i see the content in text format and with an error

```
Warning: Cannot modify header information - headers already sent by (output started at /home/*/public_html/dev/dashboard/index.php:78) in /home/*/public_html/dev/dashboard/component/export.php on line 39

```

so i ask how can i resolve this issue , can i remove the header for the index in the export.php and set a new one also there to download the file or what extacly 
maybe i need to change just in the export.php the Content-Type to be text/csv 
but is alrady sent text/html .
please help to resolve this
thank you