Hallo,
Ich möchte meine MYSQL Datenbank als CSV abspeichern. Das Ergbeniss ist eigentlich gut, bis das die Sonderzeichen nicht korrekt ausgegeben werden. Aus für wird für.
wie stellst du das fest? Besser gesagt, womit? Wenn du die Datei mit einem Editor öffnest und dessen Codierung manuell auf UTF-8 einstellst, wird es dann richtig angezeigt?
Ich dachte das ich es mit
header("Content-type: application/csv; charset=utf-8");
mein Probem behebt, doch der Gedanke war leider falsch.
Der Gedanke ist möglicherweise sogar richtig, aber er hilft nicht wirklich. Denn CSV sieht keine Möglichkeit vor, die Zeichencodierung explizit anzugeben bzw. zu speichern, das ist immer Sache des verarbeitenden Programms.
header("Content-type: application/csv; charset=utf-8");
> header("Content-Disposition: attachment; filename=myfile.csv");
>
> while ($ausgabe = mysql_fetch_object($result))
> {
> .
> .
> .
> }
>
> exit;
Wie gesagt, vermutlich erzeugst du eine korrekt in UTF-8 codierte CSV-Datei. Nur das Programm, mit dem du diese Datei weiter verarbeitest, begreift das nicht oder ist falsch eingestellt.
So long, Martin
PS:
- Umlaute sind in CSV keine Sonderzeichen. Kommas oder ggf. Anführungszeichen wären welche.
- "Ergebnis" hat nichts mit Läuseeiern zu tun, daher auch nicht mit Doppel-s.
F: Was sagt der große Keks zum kleinen Keks? A: Du kannst dich jetzt verkrümeln. Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(