Hi,
ich bin zwar mit dem Themenbereich nicht ganz richtig, aber woanders hat es auch nicht gepasst. Folgendes Problem:
ich generiere serverseitig mit PHP eine .csv-Datei (Daten aus Mysql), die ich dann zum Download anbiete. Dazu benutze ich folgenden Header:
header('Content-type: text/csv; charset=ISO-8859-1');
header( "Content-Type: text/comma-separated-values" );
header( "Content-Transfer-Encoding: BASE64;" );
header( "Content-Disposition: attachment; filename=dump.csv" );
Datenbankinhalt, Übertragung, Dokumentkodierung ist ISO-8859-1.
Das Programm ist via Browser aufzurufen unter http://example.org/generate.php
Gebe ich nun in meinem Browser diese URL ein, wird mir eine .csv-Datei zum Download angeboten. Daraufhin öffnet sich mein OpenOffice Calc, ich ändere noch ein paar Einstellungen im Importdialog(z.b. Seperator) und fertig. Alles wird korrekt angezeigt.
Auf einem anderen System, auf dem nur Excel zur Verfügung steht, funktioniert das nicht. Es kommt kein Import-Dialog, sondern Excel öffnet die Datei, gibt die Meldung "Konnte Wert in Zelle 2 nicht lesen" aus und zeigt eine leere Tabelle.
Auch ein vorheriges Speichern auf der Platte ändert daran nichts.
Interessant:
Speichere ich die .csv-Datei auf meinem System* als .csv-Datei ab und öffne sie dann mit Excel auf dem anderen System, funktionierts tadellos mit Importdialog und allem drum und dran.
Hat vielleicht jemand ähnliches schonmal gemacht? Woran könnte das liegen?
Viele Grüße
Bernauer
*Beide Systeme sind WindowsXP SP3. Auf meinem System nutze ich OpenOffice, auf dem anderen System wird MS Excel benutzt