CSV MIME-türünü nasıl kullanılır?

4 Cevap php

Bir web uygulaması üzerinde çalışıyorum, kullanıcı bir CSV dosyası için bir linke tıklayabilirsiniz. Orada mime-tipi için belirlenen herhangi bir başlık, yani tarayıcı sadece metin olarak işler. Ben bir. Csv dosyası olarak gönderilecek bu dosya için istiyorum, bu yüzden kullanıcı doğrudan kalk ile açabilirsiniz, Gnumeric, vb excel

header('Content-Type: text/csv');
echo "cell 1, cell 2";

Benim bilgisayarda beklendiği gibi bu kod çalışıyor (? Nasıl her zaman değil mi) ama başka bir bilgisayarda çalışmaz.

Benim tarayıcı (linux) FF 3.0.1 gece bir yapı olduğunu. Bu işe yaramadı tarayıcılar IE 7 ve (windows) FF 3.0

Ben habersiz herhangi bir tuhaflıklar var mı?

4 Cevap

Sen böyle bir şey yaparak bir "Save As ..." iletişim açmak için tarayıcı zorlamak için deneyebilirsiniz:

header('Content-type: text/csv');
header('Content-disposition: attachment;filename=MyVerySpecial.csv');
echo "cell 1, cell 2";

En büyük tarayıcıları üzerinde çalışması gerektiğini.

Bir dil veya çerçeve belirterek değildir, ancak aşağıdaki başlık dosya yüklemeleri için kullanılır:

"Content-Disposition: attachment; filename=abc.csv"

Internet Explorer ile sık sık Pragma belirtmek gerekir: kamu başlığını yanı sıra düzgün çalışması için indirmek için ..

header('Pragma: public');

Sadece benim 2 sent ..

Bu kod csv dahil, herhangi bir dosyayı vermek için kullanılabilir

// application/octet-stream tells the browser not to try to interpret the file
header('Content-type: application/octet-stream');
header('Content-Length: ' . filesize($data));
header('Content-Disposition: attachment; filename="export.csv"');