No se le pide que descargue el archivo CSV

Creé una solución personalizada en WordPress que generará un archivo CSV para descargar haciendo clic en un hipervínculo simple, vinculado directamente a este archivo. En lugar de que se le pida que descargue el archivo a la computadora; el CSV se abre en la ventana del navegador en su lugar.

FWIW Estoy en Media Temple usando una instalación vana de WordPress.

Envíe el tipo de mime apropiado

header('Content-type: text/csv'); 

Y use el encabezado Content-Disposition para indicar que se descargue: http://www.jtricks.com/bits/content_disposition.html

 header('Content-Disposition: attachment; filename="mycssfile.csv"'); 

Siempre desea enviar el tipo de mime adecuado, de lo contrario los firewalls, el software antivirus y algunos navegadores pueden tener problemas con él …

Puede usar la función header() PHP para cambiar el tipo de contenido

 header('Content-Type: application/csv'); header('Content-Disposition: attachment; filename="myFile.csv"'); 

El código anterior forzará una solicitud de descarga al usuario. donde myFile.csv debe reemplazarse con la ruta al archivo que desea descargar.

Esto funciona:

 $filename = 'export.csv'; header('Content-type: application/csv'); header('Content-Disposition: attachment; filename='.$filename); 

Además, personalmente no me gustan los enlaces en mis sitios, me gustan los botones. Si desea un botón para la función de exportación, puede usar el siguiente código. Pensé que lo publicaría porque me costó un poco descubrir la primera vez 🙂

  

Debe enviar al navegador un tipo MIME de application/csv para que descargue la responsabilidad de manejar el archivo a lo que el sistema operativo recomiende (o el usuario elija).

En PHP (antes de enviar cualquier salida al cliente):

 header('Content-type: application/csv');